Discuss / JavaScript / for ... in对Array的循环得到的是String而不是Number?

for ... in对Array的循环得到的是String而不是Number?

Topic source

var Ex=['a','b','c']; var idReg=/^[0-9]*$/;

for(var j in Ex){ if(idReg.test(j)){ alert(j+'is integer!'); }else alert(j+'is not integer'); }

我这么测试显示j是integer啊 是不是我的代码写错了?

'use strict'; var arr = ['Bart', 'Lisa', 'Adam'];

for(var str in arr){

alert(typeof(str)); } 结果为string

champkeh

#3 Created at ... [Delete] [Delete and Lock User]

你用正则来匹配j,本身就证明了j是字符串了啊?

廖雪峰

#4 Created at ... [Delete] [Delete and Lock User]

数组也是对象,索引就是对象的属性,就是string,但是用的时候还是建议用整数


  • 1

Reply