出现 "array.includes() 不是一个函数" 的错误可能是因为你使用的是不支持该方法的旧版本浏览器。array.includes() 是 ES2016 中新增的方法,用于判断数组是否包含某个特定的元素。
解决方法可以有以下几种:
var array = [1, 2, 3, 4, 5];
var element = 3;
if (array.indexOf(element) !== -1) {
console.log("数组包含元素");
} else {
console.log("数组不包含元素");
}
var array = [1, 2, 3, 4, 5];
var element = 3;
if (array.some(item => item === element)) {
console.log("数组包含元素");
} else {
console.log("数组不包含元素");
}
如果你需要在旧版本浏览器中使用 array.includes() 方法,可以使用 polyfill 或者 Babel 等工具进行兼容处理。这些工具会根据需要在代码中插入相应的兼容代码,使其在旧版本浏览器中也能正常运行。
// 使用 polyfill 兼容处理 array.includes()
if (!Array.prototype.includes) {
Array.prototype.includes = function(element) {
return this.indexOf(element) !== -1;
};
}
var array = [1, 2, 3, 4, 5];
var element = 3;
if (array.includes(element)) {
console.log("数组包含元素");
} else {
console.log("数组不包含元素");
}
以上是几种解决 "array.includes() 不是一个函数" 错误的方法,你可以根据具体需求选择适合的方式来解决问题。