javascript检查值;数组的键在对象中作为键存在
我需要检测这些值在对象中作为键存在的数组的 我试过这样做javascript检查值;数组的键在对象中作为键存在,javascript,arrays,object,Javascript,Arrays,Object,我需要检测这些值在对象中作为键存在的数组的 我试过这样做 var color = { 1: "Red", 2: "Blue", 3: "Yellow", 4: "Violet", 5: "Green", 7: "Orange&qu
var color = {
1: "Red",
2: "Blue",
3: "Yellow",
4: "Violet",
5: "Green",
7: "Orange"
};
var myColor = [3, 1];
for(const [key, value] of Object.entries(color)){
var bgIco = (myColor.includes(key)) ? '[' + key + ']' + value + ' - Yes' : '[' + key + ']' + value + ' - No';
console.log(bgIco);
}
但它总是回来不
如果在includes函数中,我手动在对象中输入一个数字,而不是key变量,那么它会工作,我做错了什么?对象属性始终是字符串(或符号),即使它们在声明时看起来像数字:
constobj={1:'foo'};
const key=Object.keys(obj)[0];
console.log(key==1);
控制台日志(钥匙类型)代码>如果要根据对象检查数组,则迭代数组似乎更简单
var color={
1:“红色”,
2:“蓝色”,
3:“黄色”,
4:“紫罗兰”,
5:“绿色”,
7:“橙色”
};
var myColor=[3,1,55];
对于(让k表示myColor){
log(k,color.hasOwnProperty(k),/*或*/k颜色);
}
非常感谢,它工作得很好,我知道它有点问题,但我不知道是什么