js的concat函数、join 、slice函数及二维数组的定义方式
首先:concat方法
定义:
concat() 方法用于连接两个或多个数组。该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。
举例说明:
/*concat()结果返回的是一个数组*/ var arr = new Array(3) arr[0] = "George" arr[1] = "John" arr[2] = "Thomas" var arr2 = new Array(3) arr2[0] = "James" arr2[1] = "Adrew" arr2[2] = "Martin" document.write(arr.concat(arr2)) //result: George,John,Thomas,James,Adrew,Martin
join方法:
join() 方法用于把数组中的所有元素放入一个字符串。元素是通过指定的分隔符进行分隔的。
举例说明:
/*join()返回的是一个字符串*/ var arr = new Array(3); arr[0] = "George" arr[1] = "John" arr[2] = "Thomas" document.write(arr.join()); document.write("<br />"); document.write(arr.join(".")); //result: George,John,Thomas George.John.Thomas
slice方法:
返回一个数组的一段。(仍为数组)
arrayObj.slice(start, [end])
参数
arrayObj
必选项。一个 Array 对象。
start
必选项。arrayObj 中所指定的部分的开始元素是从零开始计算的下标。
end
可选项。arrayObj 中所指定的部分的结束元素是从零开始计算的下标。
说明
slice 方法返回一个 Array 对象,其中包含了 arrayObj 的指定部分。
slice 方法一直复制到 end 所指定的元素,但是不包括该元素。如果 start 为负,将它作为 length + start处理,此处 length 为数组的长度。如果 end 为负,就将它作为 length + end 处理,此处 length 为数组的长度。如果省略 end ,那么 slice 方法将一直复制到 arrayObj 的结尾。如果 end 出现在 start 之前,不复制任何元素到新数组中。
示例
在下面这个例子中,除了最后一个元素之外,myArray 中所有的元素都被复制到 newArray 中:
newArray = myArray.slice(0, -1)
二维数组的定义方法:
方式一:var arr = [[a,b,c,d],[a1,b1,c1,d1],[a2,b2,c2,d2]],
方式二: var arr = new Array([a,b,c,d],[a1,b1,c1,d1],[a2,b2,c2,d2]),