首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

用非数字做数组上标时,length和.forEach的结果好像不大对

2012-09-18 
用非数字做数组下标时,.length和.forEach的结果好像不大对?JScript codevar arrOutput new Array()arrI

用非数字做数组下标时,.length和.forEach的结果好像不大对?

JScript code
        var arrOutput = new Array();        arrInput.forEach(function (input) {            if (arrOutput[input] == undefined) {                arrOutput [input] = 1;            }        });//arrOutput.length是0,用forEach遍历arrOutput也得不到值,但直接用key去取又能取的到值是1,奇怪了啊


这种数组里,我怎么才能获取到元素个数呢?还有怎么获取到所有key值呢...

[解决办法]
这种键值对建议直接用对象,不用数组。
JScript code
var a=new Array();a['a']=1;a['b']=2;for(var p in a)if(a.hasOwnProperty(p))alert(a[p])
[解决办法]
arrOutput[0]里面的数字是数组下标
arrOutput["sdfds"]这个相当于给arrOutput定义了一个叫sdfds的属性对象

热点排行