繁体   English   中英

在原型之前获取字符串的值

[英]Get value of string before the prototype

我目前有一个名为 isColor 的 String.protype,它正在检查颜色。 但我不希望它在 function 中有参数。

我想存档这样的东西:

const color = 'red';

console.log(color.isColor());

预期 output: true

在方法内部,将this (实例)与您要与之比较的任何内容进行比较:

 String.prototype.isColor = function() { return ['red', 'orange', 'yellow'].includes(String(this)); } console.log('red'.isColor()); console.log('somethingElse'.isColor());

如果您在草率模式下运行脚本,则需要String来转换this ,在这种情况下, this将是字符串object ,而不是字符串原语,因此您需要在比较之前将其转换为原语。

但请记住,改变内置原型是非常糟糕的做法- 如果可能的话,您应该强烈考虑使用不同的方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM