如var a=Object()
1.a.myattr="lee"
2.a["myattr"]="lee"
1和2是等价的
不过楼主给的两条例子还是比较有探讨性的,先说
var a=new Array()
a['a1']=1
a['a2']=2
a.length //输出0
你没有给数组的元素赋值,所以a数组的长度也没有被创建出来,此时a.length自然是0.
var a=new Array()
a['a1']=1
a['a2']=2
a[2]=3
你最后给数组元素a[2]赋值了,此时js会给数组a创建一个长度为3的空间,并在第三个元素中赋以3,但是元素1和元素2都没有赋值,所以此时a[0]和a[1]是没有值的,不信用可以alert一下
数组为空.指的是数组里面没有包含任何元素.判断数组为空的方式有很多种:以下 一一列出来
empty($array_test) //如果数组$array_test为空那么这个函数返回trueif($array_test) //如果数组为空.那么if的条件判断为falsecount($array_test) //计算数组元素个数.为0就是空sizeof($array_test) //count() 的别名 用法和返回一样 //实际上还有一些方式可以判断数组是否为空.常用的就是这些补充一下如果数组没有被定义还可以使用isset($array_test)//判断数组是否被定义