js数组的方法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_41179401/article/details/82019138

js数组的方法

转换方法

1 对象或数组都具有toLocaleString()toString()valueOf()方法。其中toString()valueOf()无论重写了谁,都会返回相同的值。数组会讲每个值进行字符串形式的拼接,以逗号隔开。

var a = [1,2,3];
console.log(a);  //1,2,3

 2 默认情况下,数组字符串都会以逗号隔开。如果使用join()方法,则可以使用不同的分隔符来构建这个字符串。

var a = [1,2,3];
console.log(a.join('|'));    //1|2|3

 3 栈方法

push()方法可以接收任意数量的参数,把它们逐个添加到数组的末尾,并返回修改后数组的长度。

pop()方法则从数组末尾移除最后一个元素,减少数组的length值,然后返回移除的元素。

var a = [1,2,3];
a.push(4);
console.log(a);   //1,2,3,4
a.pop();
console.log(a);   //1,2,3

 4 队列方法

栈方法是后进先出,而列队方法就是先进先出。列队在数组的末端添加元素,从数组的前端移除元素。通过push()向数组末端添加一个元素,然后通过shift()方法从数组前端移除一个元素。

unshift()方法,它和shift()方法的功能完全相反。unshift()方法为数组的前端添加一个元素。

var a = [1,2,3];
a.unshift(0);
console.log(a);   //0,1,2,3
a.shift();
console.log(a);   //1,2,3

5 重排序方法

扫描二维码关注公众号,回复: 3221751 查看本文章

数组中已经存在两个可以直接用来排序的方法:reverse()sort()

reverse() 逆向排序          sort() 从小到大排序

sort方法的默认排序在数字排序上有些问题,因为数字排序和数字字符串排序的算法是一样的。我们必须修改这一特征,修改的方式,就是给sort(参数)方法传递一个函数参数。这点可以参考手册说明。

function compare(value1, value2) {		//数字排序的函数参数
	if (value1 < value2) {			//小于,返回负数
	    return -1;
	} else if (value1 > value2) {		//大于,返回正数
	    return 1;
	} else {				//其他,返回0
	    return 0;
    }
}
var box = [0,1,5,10,15];			//验证数字字符串,和数字的区别
alert(box.sort(compare));			//传参

// PS:如果要反向操作,即从大到小排序,正负颠倒即可。当然,如果要逆序用reverse()更加方便。

6  操作方法

ECMAScript为操作已经包含在数组中的元素提供了很多方法。

concat()方法可以基于当前数组创建一个新数组。

slice()方法可以基于当前数组获取指定区域元素并创建一个新数组。s

plice()主要用途是向数组的中部插入元素。

//concat()方法
var box = [1, 2, 3];			//当前数组
var box2 = box.concat('4');		//创建新数组,并添加新元素
alert(box2);				//输出新数组 1,2,3,4
alert(box);				//当前数组没有任何变化 1,2,3

//slice() 从第几位截取到第几位
var box = [1, 2, 3];			//当前数组
var box2 = box.slice(1,2);		//从第一位取到第二位
alert(box2);				//新数组   2
alert(box);				//当前数组 1,2,3

//splice()方法  返回值是截取的那一项
//splice中的删除功能:
var box = [1, 2, 3];			//当前数组
var box2 = box.splice(0,2);		//截取前两个元素
alert(box2);				//返回截取的元素  1,2
alert(box);				//当前数组被截取的元素被删除 3

//splice中的添加功能:
var box = [1, 2, 3];			//当前数组
var box2 = box.splice(1,0,4);	        //没有截取,在第一位开始添加,0表示不截取即添加
alert(box2);				//返回截取的那一项 ,没有截取,返回 空
alert(box);				//输出1,4,2,3

//splice中的替换功能:
var box = [1, 2, 3];			//当前数组
var box2 = box.splice(1,1,0);		//截取了第2条,替换成2
alert(box2);				//返回截取的 2
alert(box);				//输出数组  1,0,3

 

猜你喜欢

转载自blog.csdn.net/qq_41179401/article/details/82019138