gpt4 book ai didi

Javascript 说数字不在数组中?

转载 作者:行者123 更新时间:2023-11-30 09:22:06 24 4
gpt4 key购买 nike

var colors={
red: [1,2,3,4,5,6],
green: [14,15,16],
black: [8,9,10,11,12,13],

}

我在一个赌博网站上工作,这是随机预测代码的一部分。当我在控制台中键入 14 in colors.green 时,它返回 false 以及绿色数组中的任何其他数字。但是,redblack 中的任何数字都会使用相同的控制台命令返回 true。有人知道为什么吗?

最佳答案

使用 in 检查该值是否是对象(或对象原型(prototype)上的任何位置)的属性名称。对于你正在做的事情,你应该使用 includes 方法,它检查一个值是否是数组的值之一:

var colors={
red: [1,2,3,4,5,6],
green: [14,15,16],
black: [8,9,10,11,12,13],
};
console.log(colors.green.includes(14));
console.log('red' in colors);

如果您需要支持过时的浏览器并且不能使用 polyfill,您可以检查 indexOf 是否为 -1:

var colors={
red: [1,2,3,4,5,6],
green: [14,15,16],
black: [8,9,10,11,12,13],
};
// any number other than -1 means the element was found:
console.log(colors.green.indexOf(15));
console.log(colors.green.indexOf(999));

关于Javascript 说数字不在数组中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50997533/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com