ECMAScript数组是有序列表,是存放多个值的集合。
有以下特性:
每一项都可以保存任何类型的数据。
数组的大小是可以动态调整。
数组的length属性:可读可写,可以通过设置length的值从数组的末尾移除项或向数组中添加新项
js中的数组是可以存放任意数据类型值的集合,数组的元素可以是任意数据类型,数组的长度可以动态调整。
// 数组的创建
var arr1=new Array();
arr1[0]='wenxiao';
console.log(arr1);
console.log(arr1.length);
// 字面量创建[]
var arr2=['wenxiao','yinghui'];
console.log(arr2);
// 创建一个数组中包含0-100
var nums=[];
for(var i=0;i<100;i++){
nums[i]=i+1;
}
console.log(nums);
// 数组的遍历(将每一个成员都提取一次)循环提取数组成员
// for for...in
for(var i=0;i<nums.length;i++){
console.log(nums[i]);
}
// for(var i=0;i<nums.length;i++){
// nums[i]='数字:'+nums[i];
// }
// console.log(nums[i]);
for(var k in nums){
console.log(k);
console.log(nums[k])
}
// 数组实现深拷贝
var arr3=[1,2,3];
var arr5=[];
for(var k in arr3){
arr5.push(arr3[k]);
}
var arr6=arr3.concat(); //数组拼接函数,返回新数组
arr6.push(4);
console.log(arr5);
// 将可迭代或类数组对象转换成真数组
var obj={
// 有下标,有length属性
'0':'wenxiao',
'1':'yinghui',
'2':'tongtong',
'length':3,
}
console.log(obj);
//console.log(Array.from(obj));
var arr_obj=Array.from(obj);
arr_obj.push('yixiao');
console.log(arr_obj);
// 字符串和数组默认是可迭代的对象