数组 是什么: 数组是一组有序集合,集合中的内容是元素。 JavaScript的数组可以包括任意数据类型。例如: [1, 2, 3.14, 'Hello', null, true]; JavaScript的Array可以包含任意数据类型,并通过索引来访问每个元素 为什么: 存储多个值 数组的属性 arr.length;//获取数组长度 改变数组的长度 arr.length=99;//请注意,直接给Array的length赋一个新的值会导致Array大小的变化 arr[11] = 99;//请注意,如果通过索引赋值时,索引超过了范围,同样会引起Array大小的变化 然而,JavaScript的Array却不会有任何错误。在编写代码时,不建议直接修改Array的大小,访问索引时要确保索引不会越界。 常见操作:对数组元素增删改查、截取 slice() ar arr = ['A', 'B', 'C', 'D', 'E', 'F', 'G']; arr.slice(0, 3); // 从索引0开始,到索引3结束,但不包括索引3: ['A', 'B', 'C'] 如果不给slice()传递任何参数,它就会从头到尾截取所有元素。利用这一点,我们可以很容易地复制一个Array: push和pop() arr.push(1,23,"a");//["A", "B", "C", "D", "E", "F", "G", "e", 1, 23, "a"] 向Array的末尾添加若干元素,pop()则把Array的最后一个元素删除掉: unshift()和shift() arr.unshift(1,2,3,"j","k","l");//[1, 2, 3, "j", "k", "l", "A", "B", "C", "D", "E", "F", "G", "e", 1, 23] 如果要往Array的头部添加若干元素,使用unshift()方法 arr.shift(); // 'A' shift()方法则把Array的第一个元素删掉: splice() splice()方法是修改Array的“万能方法”,它可以从指定的索引开始删除若干元素,然后再从该位置添加若干元素 arr.splice(2, 3, 'Google', 'Facebook');//2表示索引,3表示删除的项目,后面的表示从索引2的位置开始添加的新内容 arr.splice(2, 2); arr.splice(2, 0, 'Google', 'Facebook'); sort() var arr = ['B', 'C', 'A']; arr.sort();//["A", "B", "C"] sort()方法默认把所有元素先转换为String再排序,它会直接修改当前Array的元素位置,直接调用时,按照默认顺序排序 concat() concat()方法把当前的Array和另一个Array连接起来,并返回一个新的Array var arr = ['A', 'B', 'C']; var added = arr.concat([1, 2, 3]);//concat()方法并没有修改当前Array,而是返回了一个新的Array join() join()方法是:把当前Array的每个元素都用指定的字符串连接起来,然后返回连接后的字符串: var arr = ['A', 'B', 'C', 1, 2, 3]; arr.join('-'); // 'A-B-C-1-2-3', 如果Array的元素不是字符串,将自动转换为字符串后再连接。 every(isEven),some(isEven),forEach(isEven),map(isEven),filter(isEven) function isEven(x){ console.log(x); return x%2==0?true:false; } var arr=[1,2,3,4,5,6,7,8,9]; var res1=arr.every(isEven);//遇到返回值为false就停下来 var res1=arr.some(isEven);//遇到返回值为true就停下来 var res1=arr.forEach(isEven);//循环结束后停下来 var res1=arr.map(isEven);//循环结束后停下来,返回值:是函数的返回值 var res1=arr.filter(isEven);//过滤出返回值为true的参数,返回值:是参数,是让函数返回值为true的参数 console.log(res1); 创建数组 // 定义一 通过new关键字 var arr = new Array(); // 空数组 var arr2 = new Array(8);// 创建8个元素的数组 var arr3 = new Array(1,2);// 该数组存放两个值1和2 var arr4 = new Array("Jan","Feb","Mar"); // 定义二 数组直接量 var arr6 = [];// 空数组 var arr7 = [1];// 有一个元素是1 var arr8 = [1,2,3,4];// 多个元素由逗号隔开