数组:
<script>
var arr=[4];
var a1=new Array(3);
var a2=new Array(1,2,3);
var a3=new Array;
console.log(arr);
console.log(a1);
console.log(a2);
console.log(a3);
</script>
arr代表长度为1,数组下标为0的值为4。
a1代表长度为3,但未赋值的数组。
a2代表长度为3,值分别为1,2,3。
a3代表定义了一个数组,但未赋值。
数组下标从0开始。
.length可以获取数组的长度。
类数组:只有length这个属性,没有数组的其他方法,如
对象: 建立对象
- var object={ key:"value", key:"value", ..... //属性用逗号连接 }
- var obj1=new object()
调用方法: person.code()要加括号。 获取属性两种方法:
1.person["name"]
2.person.name
for in循环:用于循环对象
for(ds in person)
{ ds对象的key
person[ds] (这里ds不可以加引号)
}
ds为每一项key,ds为变量,不是常量。如果想获取value,应该 console.log(person[ds]),而不是console.log(person.ds)
数组和对象为引用数据类型,不可以用typeof来判断。可以用两种常见的方法判断
1.console.log(想判断的数组名/对象名.constructor)
2.console.log(想判断的数组名/对象名 instanceof Array)
如果是数组,则输出结果为true,如果是对象,输出结果为false。该判断方式是判断某个arr是否为Array的实例化对象。
<script>
var arr=[4];
var a1=new Array(3);
var a2=new Array(1,2,3);
var a3=new Array;
var obj1=new Object()
var person={
name:"xiaoming"
}
console.log(obj1.constructor)
console.log(arr);
console.log(a1);
console.log(a2);
console.log(a3);
console.log(a2.constructor)
</script>
<script>
var arr=[4];
var a1=new Array(3);
var a2=new Array(1,2,3);
var a3=new Array;
var obj1=new Object()
var person={
name:"xiaoming"
}
console.log(obj1 instanceof Array)
console.log(arr);
console.log(a1);
console.log(a2);
console.log(a3);
console.log(a2 instanceof Array)