相关疑难解决方法(0)

JavaScript数组索引是字符串还是整数?

我有一个关于JavaScript数组的通用问题.JavaScript中的数组索引是否作为字符串内部处理?我读到某处,因为数组是JavaScript中的对象,索引实际上是一个字符串.我对此感到有点困惑,并且对任何解释都很高兴.

javascript arrays indices

14
推荐指数
3
解决办法
9150
查看次数

为什么javascript在迭代时会将数组索引转换为字符串?

这个Javascript逻辑让我困惑.我正在创建一个数组并将其第一个元素设置为数字.当我使用"for"循环进行交互时,Javascript将数组键转换为字符串.为什么?我希望它留下一个数字.

stuff = [];
stuff[0] = 3;

for(var x in stuff) {
    alert(typeof x);
}
Run Code Online (Sandbox Code Playgroud)

javascript

7
推荐指数
2
解决办法
670
查看次数

迭代值时,为什么当value是数字时,typeof(value)会返回"string"?使用Javascript

我正在使用Google Chrome进行此测试:与直觉相反,第一个循环警告"字符串"3次,而第二个循环警告"数字"3次.

numarray = [1, 2, 3];

//for-each loop
for(num in numarray) 
    alert(typeof(num));

//standard loop
for(i=0; i<numarray.length; i++) 
    alert(typeof(numarray[i]));
Run Code Online (Sandbox Code Playgroud)

我期待两个循环警告"数字"3次.如何在Javascript中实现第一个循环?换句话说,如果for-each是语法糖,使用标准循环的等价物是什么?

另外,有没有办法使用标准循环迭代对象的命名空间?我希望使用第二种循环来触摸某些对象的方法和属性中的每一个.我是Javascript的新手,非常感谢任何帮助,谢谢.

javascript foreach typeof

5
推荐指数
1
解决办法
610
查看次数

为什么键入一个字符串 for ... in

我正在for...in用 javascript编写一个简单的循环,想知道为什么key是字符串而不是数字?

为什么会这样,我可以将其更改为数字吗?

var array = ["a", "b", "c"];

for (var key in array) {
   console.log(typeof key); //string
   console.log(key + 1); //expected output : 01, 11, 21...
}
Run Code Online (Sandbox Code Playgroud)

javascript for-loop

2
推荐指数
1
解决办法
224
查看次数

标签 统计

javascript ×4

arrays ×1

for-loop ×1

foreach ×1

indices ×1

typeof ×1