数组中的常用函数

数组常用函数

增加方法

1. push: 加到后面,插入一个新数据到末尾位

2. unshift: 加到前面,插入一个新数据到开始位

数组最好的同类型的数据

var arr1 = ["a"]
console.log(arr1);
类型为你当前里面存储的数据类型   返回值为新的数组长度
console.log(arr1.push('s'));
console.log(arr1.unshift('d'));

某个商品的分类里面有对应的商品 矿泉水。他是按照销量进行排名 有一天 红牛的销量大于矿泉水 旺仔牛奶的销量小于矿泉水。现在需要将他们放在一个数组中 并且打印排名最后的商品

var shopType = ['怡宝矿泉水']
shopType.push('纯真牛奶');
shopType.push('乐虎');
console.log( shopType[shopType,length-1]);

删除方法

pop:删除最后一个 ,返回删除的元素

shift:删除一个,返回删除的元素

var arr = new Array(40,50,60);
console.log(arr.pop);   //打印删除元素
console.log(arr);   //打印数组
console.log(arr.shift);  //打印删除元素
console.log(arr);   //打印数组

定义一个数组 接收一个数据

如果对应的输入的是1的话 删除一个元素 打印删除的元素 再打印对应的数组

如果输入的是2的话 就添加需要用户输入添加的元素 追加到后面

如果输入的是3的话 就删除最后一个元素 打印删除的元素 再打印对应的数组

如果输入的是4的话 就添加需要用户输入添加的元素 追加元素到第一个
 

function fn(){
    var arr1 = ['hello','world','helloWorld']
    var userInput = prompt() //接收一个string类型的值
    switch(userInput){ //判断接收的数据为什么
        case '1'://数据为1
            var rmStr = arr1.shift()
            console.log(rmStr);
            break;
        case '2'://数据为2
            var inputAdd = prompt("请输入你要添加内容")
            arr1.push(inputAdd)
            break
        case '3'://数据为3
            var rmStr = arr1.pop()
            console.log(rmStr);
            break
        case '4'://数据为4
            var inputAdd = prompt("请输入你要添加内容")
            arr1.unshift(inputAdd)
            break
        default://都不是 打印输出出错并且调用函数
            console.log("输入出错");
            fn() 
    }
    console.log(arr1);
}
fn()

reverse 反转

将数组元素全倒过来 会影响之前的数组 没有参数 返回值为倒转过来的数组

var arr = ['a','b','c','d']
var strArr = arr.reverse() //反转 将数组元素全倒过来 
console.log(strArr);
// strArr 和 arr俩个其实指向的是一个变量 所以操作 strArr会影响arr 操作arr也会影响strArr
console.log(strArr == arr); //true
console.log(strArr === arr); //true
console.log(arr);

sort 排序

sort 方法认(无参的方式)按照ascii码进行比较 对应的顺序为从小到大 返回值为排序好的数组

里面可以指定参数 参数是一个function 这个里面有俩个参数 a b 如果是返回为 a-b 为1 就是正序 相反如果返回 b-a 就是-1 那就是倒序

var arr1 = [15,70,3,6,8,7]
arr1.sort() //排序 重点
console.log(arr1);

 指定比较的方法进行比较

arr1.sort(function(a, b) {
	return a - b //返回的是1 1就是正序 a-b -1就是倒序 b-a
})
console.log(arr1);
var numArr = arr1.sort(function(a, b) {
	return b - a //返回的是1 1就是正序 a-b -1就是倒序 b-a
})
console.log(arr1);
console.log(numArr);

concat 合并

进行数组合并操作 对应的返回值为一个新的数组 不改变原本的数组

传入的参数 是一个数组 也可以是单个元素 连接到后面

var arr = [1,2,3,4]
var arr1 = [4,5,6,7]
//连接方法
var newArr =  arr.concat(arr1)
console.log(arr);// 还是 1 2 3 4
console.log(newArr);
var newArr1 = arr.concat(3)
console.log(newArr1);

slice 截取

截取方法 slice截取对应数组的某一段内容组成一个新的数组 返回的是一个新的数组

不会改变原本的数组 参数为开始下标和结束下标(不包含结束的下标)

var arr1 = [4,5,6,7]
var sliceArr = arr1.slice(1,3)
console.log(sliceArr);//5 6
console.log(arr1.slice(0,1));//4
console.log(sliceArr.slice(0,1));//5
console.log(arr1.slice(arr1.length-1,arr1.length));//截取最后一个

join 连接

join连接 连接成字符串 返回值为string

不会影响原本的数组

var arr = [1,2,3]
var str  = arr.join() //相当于全部连一块 认以,分割 arr.join() == arr.join(',')
console.log(str);
var str1 = arr.join("/") 
console.log(str1);

splice 删除
会改变之前的数组 返回的是一个删除的数组
如果是1个参数 那么就是从这个指定的参数下标删到结束
如果是2个参数 那么就是从指定的参数下标位置 删对应的指定个数
如果是3个参数 或者以上的参数 那么就是从指定的参数下标位置 删对应的指定个数 再将后面的数据填入对应的删除位置
如果第二个参数为0 那么返回的是一个空数组 不删除 单纯的将对应的数据插入到指定的下标
删除 开始下标 删除的个数(个数可以被省略 删到最后)

var arr = [1,2,3,4]
var newArr = arr.splice(0,2)// 1 2
console.log(newArr); // 1 2
console.log(arr); // 3 4
var arr1 =  [5,6,7,8]
var spliceArr = arr1.splice(1) //从下标1开始删除 删到最后
console.log(spliceArr); // 6 7 8
console.log(arr1);//5

删除位置的数据替换

var arr2 = [6,7,8,9]
var spliceArr1 = arr2.splice(1,2,10,11)// 删除7 8 将 10和11放到7 8的位置
console.log(spliceArr1); // 7 8
console.log(arr2); // 6 10 11 9

删除 插入元素到指定的位置

var arr3 = [1,2,3]
var insertArr = arr3.splice(1,0,'a') //不删除元素 插入a到数组中去
console.log(insertArr); //空数组 
console.log(arr3); //插入到指定的位置 1 a 2 3

indexOf 正序查找下标

根据对应的值找下标 找到了返回对应第一次出现的下标 找不到返回-1

var arr = ['a','b','c','b']
console.log(arr.indexOf('b'));//indexOf找的是第一次出现的位置 认从下标0开始找 没有找到返回-1
console.log(arr.indexOf('b',0));//1
console.log(arr.indexOf('b',2));//从下标1开始找 下标还是原本的下标
var arr1 =  [1,1,2,3,4,1]
console.log(arr1.indexOf(1));//0
console.log(arr1.indexOf(1,2));//5
console.log(arr1.indexOf(1,10));//-1

lastIndexOf 反序查找下标

从后往前 根据对应的值找下标 找到了返回对应第一次出现的下标 找不到返回-1

console.log(arr1.lastIndexOf(1));//5
console.log(arr1.lastIndexOf(1,2));//1

相关文章

显卡天梯图2024最新版,显卡是电脑进行图形处理的重要设备,...
初始化电脑时出现问题怎么办,可以使用win系统的安装介质,连...
todesk远程开机怎么设置,两台电脑要在同一局域网内,然后需...
油猴谷歌插件怎么安装,可以通过谷歌应用商店进行安装,需要...
虚拟内存这个名词想必很多人都听说过,我们在使用电脑的时候...
win11本地账户怎么改名?win11很多操作都变了样,用户如果想要...