通过运用一些数组的方法,能更有利方便的让我们的数组中的数据进行管理,那这些方法都是什么,他们都用什么作用呢?下面让我来给大家详解一下。
先给定一个数组
var arr = [“hello”,1,2,3,“world”];
下面就让我们来通过数组的一些常用方法来管理这些数据把!
1.push()
// 参数:任意个,任意值
// 返回值:数组被增加之后的长度
// 功能:在数组的尾部增加数据,增加的数据是push的参数
// 有没有修改原数组:会修改原数组
var res = arr.push("a",3,4,5,"hahah");
console.log(res); //10
2.unshift()
// 参数:任意个,任意值
// 返回值:数组被增加之后的长度
// 功能:在数组的头部增加数据,增加的数据是unshift的参数
// 有没有修改原数组:会修改原数组
var res = arr.unshift("a",3,4,5,"hahah");
console.log(res); //10
3.pop()
// 参数:没有
// 返回值:被删除的数据
// 功能:删除最后一位
// 有没有修改原数组:会修改原数组
var res = arr.pop();
console.log(res);// world
4.shift()
// 参数:没有
// 返回值:被删除的数据
// 功能:删除最后一位
// 有没有修改原数组:会修改原数组
var res = arr.pop();
console.log(res);// world
5.splice()
// 返回值:被删除的数据
// 有没有修改原数组:会修改原数组
// 参数:一个,表示索引
// 功能:从指定索引,删除到结束
var res = arr.splice(2);
console.log(res);//[4,5,"world"]
// 返回值:被删除的数据
// 有没有修改原数组:会修改原数组
// 参数:两个,第一个表示索引,第二个表示个数
// 功能:从指定索引,删除指定个数个
var res = arr.splice(2,2);
console.log(res);//[4,5]
// 返回值:被删除的数据
// 有没有修改原数组:会修改原数组
// 参数:两个,第一个表示索引,第二个表示个数,从第三个参数开始向后,都是数据
// 功能:从指定索引,删除指定个数个,填充第三个参数向后司所有的数据
var res = arr.splice(2,2,"zhangsan","lisi",true,"hahah",3.1415);
console.log(res);//[4,5]
6.reverse()
// 返回值:翻转后的数组
// 有没有修改原数组:会修改原数组
// 参数:没有
// 功能: 翻转数组
var res = arr.reverse();
console.log(res); // ["world", 5, 4, 3, "hello"]
7.join()
// 返回值:字符结构
// 有没有修改原数组:不会修改原数组
// 参数:没有
// 功能:转成字符
var res = arr.join();
console.log(res);//hello,3,4,5,world
8.slice();
// 返回值:新数组
// 有没有修改原数组:不会修改原数组
// 参数:一个参数
// 功能:从指定索引开始截取,返回成一个新数组
var res = arr.slice(3);
console.log(res);//[5, "world"]
// 返回值:新数组
// 有没有修改原数组:不会修改原数组
// 参数:两个参数
// 功能:从指定索引开始截取,截取到指定位置的前一个,返回成一个新数组
var res = arr.slice(2,4);
console.log(res);//[4,5]
9.concat()
// 返回值:新数组
// 有没有修改原数组:不会修改原数组
// 参数:其中一个数组
// 功能:合并数组
var arr1 = ["a","b"];
var arr2 = [4,5];
var res = arr1.concat(arr2);
console.log(res);//["a","b",4,5]