数组(array)是按次序排列的一组值。每一个值的位置都有编号(从0开始),整个数组用方括号表示。数组
var arr = ['a', 'b', 'c'];
建立数组的方式函数
var arr = new Array(1,2,3);
var arr = Array(1,2,3);
var = [1,2,3];
数组能够嵌套 一个数组能够做为一个元素被包含在另一个数组里面 这就是二维数组prototype
var arr=[[1,2,3],[4,5,6],[7,8,9]]
检测数组的方法code
console.log(arr instanceof Array); console.log(Object.prototype.toString.call(arr)); console.log(Array.isArray(arr));
转换方法
toString
把数组转换为字符串 并返回结果对象
var arr=[1,2,3,4,5]; console.log(arr.toString()) //1,2,3,4,5
valueOf
返回 Boolean 对象的原始值排序
var arr=[1,2,3,4,5]; console.log(arr.valueOf()) // [1,2,3,4,5]
push方法用于在数组的末端添加一个或多个元素,并返回添加新元素后的数组长度 该方法会改变原数组字符串
var arr = []; arr.push(1) // 1 --->数组长度 arr.push('a') // 2 arr.push(true, {}) // 4 arr // [1, 'a', true, {}]
pop方法用于删除数组的最后一个元素,并返回该元素 该方法会改变原数组
对空数组使用pop方法,不会报错,而是返回undefinedio
var arr = ['a', 'b', 'c']; arr.pop() // 'c' arr // ['a', 'b']
shift方法用于删除数组的第一个元素,并返回该元素 该方法会改变原数组console
var a = ['a', 'b', 'c']; a.shift() // 'a' a // ['b', 'c']
unshift方法用于在数组的第一个位置添加元素,并返回添加新元素后的数组长度 该方法会改变原数组function
var a = ['a', 'b', 'c']; a.unshift('x'); // 4 a // ['x', 'a', 'b', 'c']
unshift方法能够接受多个参数,这些参数都会添加到目标数组头部。
var arr = [ 'c', 'd' ]; arr.unshift('a', 'b') // 4 arr // [ 'a', 'b', 'c', 'd' ]
reverse方法用于颠倒排列数组元素,返回改变后的数组 该方法将改变原数组。
var a = ['a', 'b', 'c']; a.reverse() // ["c", "b", "a"] a // ["c", "b", "a"]
sort方法对数组成员进行排序,默认是按照字典顺序排序。排序后,原数组将被改变
sort方法不是按照大小排序,而是按照Unicode顺序 即数值会被先转成字符串,再按照Unicode顺序进行比较,因此101排在11的前面。
[11, 101].sort() // [101, 11]
若是想让sort方法按照自定义方式排序,能够传入一个函数做为参数。
[10111,1101,111].sort(function(a,b){ return a-b; }) //[111, 1101, 10111]
concat方法用于多个数组的合并 它将新数组的成员,添加到原数组成员的后部,而后返回一个新数组,原数组不变。
['hello'].concat(['world']) // ["hello", "world"]
slice方法用于提取目标数组的一部分,返回一个新数组,原数组不变。
arr.slice(start, end);
它的第一个参数为起始位置(从0开始),第二个参数为终止位置(但该位置的元素自己不包括在内)。若是省略第二个参数,则一直返回到原数组的最后一个成员。
var a = ['a', 'b', 'c']; a.slice(0) // ["a", "b", "c"] a.slice(1) // ["b", "c"] a.slice(1, 2) // ["b"]
若是slice方法的参数是负数,则表示倒数计算的位置。
var a = ['a', 'b', 'c']; a.slice(-2) // ["b", "c"] a.slice(-2, -1) // ["b"]
-2表示倒数计算的第二个位置,-1表示倒数计算的第一个位置。
若是第一个参数大于等于数组长度,或者第二个参数小于第一个参数,则返回空数组
splice方法用于删除原数组的一部分红员,并能够在删除的位置添加新的数组成员,返回值是被删除的元素。该方法会改变原数组
splice的第一个参数是删除的起始位置(从0开始),第二个参数是被删除的元素个数。若是后面还有更多的参数,则表示这些就是要被插入数组的新元素
var a = ['a', 'b', 'c', 'd', 'e', 'f']; a.splice(4, 2) // ["e", "f"]