[英]'includes()' is for string, not for array in Javascript?
来自: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object
Object.keys()
返回一个数组,其中包含所有给定对象自己的可枚举字符串属性的名称。
这表示“包含”适用于字符串: https://www.w3schools.com/jsref/jsref_includes.asp
那么为什么以下语句在此 SO 线程中显示的代码中有效?
https://stackoverflow.com/a/66758849/462608
const colorValues = Object.keys(this.colorValues);
const invalidColors = colors.filter(c => !colorValues.includes(c));
它存在于两个原型中: String.prototype.includes
和Array.prototype.includes
。
String.prototype.includes
检查字符串是否包含传递的 substring。
Array.prototype.includes
检查数组是否包含特定值(使用 SameValueZero 算法)。
有点令人困惑的是,它们使用完全相同的名称,但使用的逻辑相似。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.