toString方法
把数组转换为(逗号分隔)的字符串。
当数组用于字符串环境时,JavaScript 会调用这一方法将数组自动转换成字符串。但是在某些情况下,需要显式地调用该方法。
var fruits = [1, 2, "Apple", "Mango"];
//转换为字符串输出
document.write(fruits.toString());
//结果1,2,Apple,Mango
join()方法
将所有数组元素结合为一个字符串。它的行为类似 toString(),但是您还可以规定分隔符.
var fruits = [1, 2, "Apple", "Mango"];
document.write(fruits.join());
//结果1,2,Apple,Mango
document.write(fruits.join("+"));
//结果1+2+Apple+Mango
document.write(fruits.join("*"));
//结果1*2*Apple*Mango
pop()方法
从数组中删除最后一个元素,数组长度减 1,并且返回它删除的元素的值。如果数组已经为空,则 pop() 不改变数组,并返回 undefined 值。
var fruits = [1, 2, "Apple", "Mango"];
//从数组中删除最后一个元素 "Mango"
fruits.pop();
document.write(fruits);
// 结果1,2,Apple
push()方法
向数组末尾添加元素
var fruits = [1, 2, "Apple", "Mango"];
// 向数组末尾添加元素
fruits.push(3,"re");
document.write(fruits);
//结果1,2,Apple,Mango,3,re
shift()方法
删除数组首个元素,并数组其余元素下标向更低位移,如果数组是空的,那么 shift() 方法将不进行任何操作,返回 undefined 值。该方法将改变现有数组。
// shift() 方法会删除首个数组元素,并把所有其他元素“位移”到更低的索引。
var fruits = [1, 2, "Apple", "Mango"];
//删除数组首个元素
fruits.shift();
document.write(fruits);
// 结果2,Apple,Mango
document.write(fruits[0]);
//结果为2,其余数组元素下标向低位移
unshift() 方法
向数组开头添加新元素,并数组其余元素下标向更高位移
var fruits = [1, 2, "Apple", "Mango"];
// 向数组开头添加元素
fruits.unshift(3,"abc");
document.write(fruits);
// 结果3,abc,1,2,Apple,Mango
document.write(fruits[2]);
//结果为1,其余数组元素下标向高位移
concat() 方法
用于连接两个或多个数组。该方法不会改变现有的数组,而返回一个新的数组。
//向数组内添加元素
var a = [1,2,3];
document.write(a.concat(4,5));
//结果1,2,3,4,5
//链接两个数组
var arr1=[1,2,3];
var arr2=[9,8,7];
document.write(arr1.concat(arr2));
// 结果1,2,3,9,8,7
//链接多个数组
var arr1 = [1, 2, 3];
var arr2 = [9, 8, 7];
var arr3 = ["J", "Q", "K"];
document.write(arr1.concat(arr2, arr3));
// 结果1,2,3,9,8,7,J,Q,K
reverse()
方法用于颠倒数组中元素的顺序。该方法会改变原来的数组,而不会创建新的数组。
var arr=[1,2,3];
document.write(arr);
//结果1,2,3
arr.reverse();
document.write(arr);
// 结果3,2,1
slice()
,方法可从已有的数组中返回选定的元素。该方法并不会修改数组,而是返回一个新的数组中。
参数:
start:必需。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2指倒数第二个元素,以此类推。
end:可选。规定从何处结束选取。该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。
var arr=[1,2,3];
document.write(arr.slice(1));
// 结果2,3
var arr=[1,2,3,4,5,6,7,8,9];
document.write(arr.slice(1,5));
// 结果2,3,4,5
sort()
,方法用于对数组的元素进行排序。
参数:
sortby:可选。规定排序顺序。必须是函数。
PS:
如果调用该方法时没有使用参数,按照字符编码的顺序进行排序,要实现这一点,首先应把数组的元素都转换成字符串(如有必要),以便进行比较。
如果想按照其他标准进行排序,就需要提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数 a 和 b,其返回值如下:
- a<b,在排序后的数组中 a 应该出现在 b 之前,则返回一个小于 0 的值。
- a=b,则返回 0。
- a>b,则返回一个大于 0 的值。
//按字母顺序进行排序:
var arr = ["b", "s", "e", "r", "t", "y", "u", "j", "a"];
document.write(arr + "<br />")
document.write(arr.sort() + "<br />")
/*
输出:
b,s,e,r,t,y,u,j,a
a,b,e,j,r,s,t,u,y
*/
//按字母顺序进行排序:
var arr = [1, 20, 30, 10, 100];
document.write(arr + "<br />")
document.write(arr.sort() + "<br />")
/*输出
1,20,30,10,100
1,10,100,20,30
*/
//没有按照数字大小进行排序,而是按照ASCII码进行排序
// 如要按照数字大小排序,需要定义排序函数
var arr = [1, 20, 30, 10, 100];
document.write(arr + "<br />")
function sortNumber(a, b) {
return a - b
}
document.write(arr.sort(sortNumber));
/*
输出:
1,20,30,10,100
1,10,20,30,100
*/
splice()方法
向/从数组中添加/删除项目,然后返回被删除的项目。
参数:
index :必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。
howmany :必需。要删除的项目数量。如果设置为 0,则不会删除项目。若不设置,则删除后面所有元素。
item1, …, itemX :可选。向数组添加的新项目。
splice() 方法可删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元素。
如果从 arrayObject 中删除了元素,则返回的是含有被删除的元素的数组。(直接修改数组)
// splice()方法,删除数组值
var arr=[1,2,3,4,5,6];
document.write(arr+"<br>");
//在下标为1的位置删除两个值
arr.splice(1,2);
document.write(arr);
/*
输出:
1,2,3,4,5,6
1,4,5,6
*/
// splice()方法,删除值并添加新元素
var arr=[1,2,3,4,5,6];
document.write(arr+"<br>");
//在下标为1的位置删除一个值,并添加一个新元素来替代被删除的元素
arr.splice(1,1,"add");
document.write(arr+"<br>");
/*
输出:
1,2,3,4,5,6
1,add,3,4,5,6
*/
var arr=[1,2,3,4,5,6];
document.write(arr+"<br>");
//在下标为1的位置添加一个值
arr.splice(1,0,"set");
document.write(arr+"<br>");
/*
1,2,3,4,5,6
1,set,2,3,4,5,6
*/
toSource() 方法
表示对象的源代码。
toSource() 方法通常由 JavaScript 在后台自动调用,并不显式地出现在代码中。
indexOf()方法
返回 变量x 在数组arrayObject中首次出现的下标,如果查询不到,返回-1。
var arr=[1,2,3,4,5,6];
document.write(arr.indexOf(2));
//输出:1
document.write(arr.indexOf(10));
//输出-1
includes()方法
判断 数据x 是否存在于数组arrayObject中,如果存在,返回值为true;不存在,返回值为false。
var arr = [1,2,3,4];
document.write(arr.includes(2));
//输出:true
document.write(arr.includes(22));
//输出:false