猿问

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

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

我想存档类似这样的东西:

const color = 'red';
console.log(color.isColor());

预期输出:true


慕尼黑的夜晚无繁华
浏览 93回答 1
1回答

冉冉说

在方法中,将(实例)与要将其与之进行比较的任何内容进行比较:thisString.prototype.isColor = function() {  return ['red', 'orange', 'yellow'].includes(String(this));}console.log('red'.isColor());console.log('somethingElse'.isColor());您需要转换,如果您以草率模式运行脚本,在这种情况下将是一个字符串对象,而不是字符串基元,因此您需要在比较之前将其转换为基元。Stringthisthis但请记住,改变内置原型是非常糟糕的做法 - 如果可能的话,你应该强烈考虑使用不同的方法。
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答