Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/417.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 检查项目';s在使用对象的数组中出现 我运行了代码,但发现我必须使用cal[item]将项放入对象内的数组中。为什么cal.item的旧方法不起作用 我试着使用下面的“如果+其他”和只使用“如果”,结果是不同的,“如果”版本给了我正确的答案。但我不明白为什么它会在计算中导致不同的流量_Javascript_Arrays_Javascript Objects - Fatal编程技术网

Javascript 检查项目';s在使用对象的数组中出现 我运行了代码,但发现我必须使用cal[item]将项放入对象内的数组中。为什么cal.item的旧方法不起作用 我试着使用下面的“如果+其他”和只使用“如果”,结果是不同的,“如果”版本给了我正确的答案。但我不明白为什么它会在计算中导致不同的流量

Javascript 检查项目';s在使用对象的数组中出现 我运行了代码,但发现我必须使用cal[item]将项放入对象内的数组中。为什么cal.item的旧方法不起作用 我试着使用下面的“如果+其他”和只使用“如果”,结果是不同的,“如果”版本给了我正确的答案。但我不明白为什么它会在计算中导致不同的流量,javascript,arrays,javascript-objects,Javascript,Arrays,Javascript Objects,提前谢谢你的帮助 const number=“35 30 31 43 48 2 11 13 45 46 49 11 14 21 28 37 44 18 29 32 33 36 20 24 30 32 46 5 17 35 37 42 49 1 24 25 27 31 15 17 29 30 34 5 10 18 28 33 22 27 31 36” 常量数组=number.split(“”) 常量cal={} for(数组的常量项){ 如果(cal.item==null){ cal.item=

提前谢谢你的帮助

const number=“35 30 31 43 48 2 11 13 45 46 49 11 14 21 28 37 44 18 29 32 33 36 20 24 30 32 46 5 17 35 37 42 49 1 24 25 27 31 15 17 29 30 34 5 10 18 28 33 22 27 31 36”
常量数组=number.split(“”)
常量cal={}
for(数组的常量项){
如果(cal.item==null){
cal.item=0
}否则{
校准项目+=1;
}
}

console.log(cal)
您可以使用
reduce
来实现这一点

常数编号=
"3 5 30 31 43 48 2 11 13 45 46 49 11 14 21 28 37 44 18 29 32 33 36 40 2 20 24 30 32 46 5 17 35 37 42 49 1 24 25 27 31 37 15 17 29 30 34 37 5 10 18 20 28 33 1 22 25 27 31 36"
常量数组=number.split(“”)
常量出现次数=数组。减少((acc,el)=>{
acc[el]=(acc[el]| 0)+1
返回acc
}, {})

console.log(事件)
如果
item
是一个包含文本的变量,并且您希望基于该文本设置属性,则需要使用
cal[item]
,因为
cal.item
将设置
.item
属性。这不是“老办法”,而是方括号/点表示法的工作原理(而且一直都是如此)。至于你的第二个问题,因为你使用了错误的
cal.item
,它将开始是
未定义的
,然后在下一次迭代中被定义。我认为你需要在这里澄清你的意图/愿望
cal.item
cal[“item”]
作为对象属性的引用是一样的。
array.includes(113)
将告诉您它是否包含在内,因为它返回布尔值。如果副本没有回答您的问题,请通过对问题的详细编辑进行澄清,并要求重新打开。谢谢,我想问为什么使用“如果”只会给我正确的答案,比如“{37:4}”,但上面的“如果其他”会给我“{37:3}”?如果目的是“数组中每个数字的出现次数”,则这是好的