首先,你得弄清楚js的”数组“和”对象“,
var a=["23333","hhhhh"]//数组,获取值的方式为“a[索引]”,如a[0]var a={
alpha:"6666",
beta:"66666"
}//对象, 获取值的方式可以为 a.键名 或者 a["键名"] ,如:a.alpha或者a["alpha"]
估计你把对象和数组搞混了。
数组获取长度的方式为:a.length
对象获取长度的方式为:Object.getOwnPropertyNames(a).length
以下是对象获取长度的测试代码,测试地址:
http://www.w3school.com.cn/tiy/t.asp?f=jquery_manipulation_before_func
<html><head>
<script type="text/javascript" src="/jquery/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#btn1").click(function(){
var a = {
alpha:6666,
beta:66666
}
alert(Object.getOwnPropertyNames(a).length)
})
})
</script>
</head>
<body>
<button id="btn1">Show me</button>
</body>
</html>
当然是0,因为你的数组内容是空的,一个元素都没有数组的话
arr['h']
=
123;//这种赋值方法是不支持的,在JS中所谓的关联数组,其实是一个对象,模拟关联数组的
var
arr
=
{},//创建一个对象
len
=
0
arr["h"]
=
"hh"
arr["i"]
=
"gaj"
for(
var
i
in
arr)
{
len++
}
alert(len)
//只能这么做的
上面的做法相当于:
var
arr
=
{
'h'
:
'hh',
'i'
:
'gaj'
}