数组常见的方法

这篇博客详细介绍了JavaScript中数组的各种操作方法,包括判断数组类型、添加和删除元素、筛选、获取索引、去重、转换为字符串、排序、翻转以及合并数组等常见操作。通过实例代码展示了每种操作的实现方式,帮助开发者更好地理解和运用数组功能。
摘要由CSDN通过智能技术生成

1. 判断是否为数组

 var arr = [];
 var obj = {};
 //方法一 数组名 instanceof Array
console.log(arr instanceof Array); // true
// 方法二 (Array.isArray(数组名)
console.log(Array.isArray(arr));  //true
console.log(Array.isArray(obj));  //false

2. 添加数组元素

        var arr21 = [1, 2, 3, 4, 5, 6];
        // (1)push ()在数组的末尾 添加一个或多个数组元素 
        var sum21 = arr21.push(7, 8,9);
        console.log(sum21);  // 9
        console.log(arr21);  // [1, 2, 3, 4, 5, 6, 7, 8, 9]
        // (2)unshift()在数组开头添加
        arr21.unshift(0); 
        console.log(arr21);  // [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
        console.log(arr21.unshift())  // 10

3. 删除数组元素

        // 3. 删除数组元素  (返回的是删除的那个元素)
        // (1)pop可以删除数组最后一个元素
        console.log(arr21.pop())  //9
        // (2)shift()可以删除数组第一个元素
        console.log(arr21.shift());  //0
        console.log(arr21); //  [1, 2, 3, 4, 5, 6, 7, 8]

4. 筛选数组元素

       function sxsz() {
            var sx = [];
            for (i = 0; i < arguments.length; i++) {
                console.log(arguments.length)  //6
                if (arguments[i] > 2) {
                    sx[sx.length] = arguments[i];
                    // sx.unshift(arguments[i]);
                }
            }
            return sx //不返回,会显示没有定义
        }
        var inp = sxsz(1, 23, 34, 5, 5, 6);
        console.log(inp)  //[23, 34, 5, 5, 6]

5.获取某个数组元素的索引号

        // 5. 获取数组某个元素的索引号
        var arr5 = [1, 23, 4, 56, 3, 56, 7, 2];
        // (1)indexOf() 从0开始查找 如果有重复值,则只显示第一个  (常用)
        console.log(arr5.indexOf(56));  // 3
        // (2)lastIndexOf() 从尾部开始查找 如果有重复值,则只显示第一个
        console.log(arr5.lastIndexOf(2)); //7

6. 数组去重复值

// 6. 数组去重复值 
// 6.1采用for循环+ indexOf
function unique(arr) {
  var newArr = [];
    for (i = 0; i < arr.length; i++) {
        if (newArr.indexOf(arr[i]) === -1) {
           newArr.push(arr[i]);
        }
     }
            return newArr;
}
var arr6 = [1, 2, 4, 6, 3, 6, 6, 2]
sum61 = unique([1, 2, 4, 6, 3, 6, 6, 2]) 
console.log(sum61); // [1, 2, 4, 6, 3]
// 6.2 new Set(数组)方法
console.log(...new Set(arr6))
console.log(new Set(arr6)) // {1, 2, 4, 6, 3}

7.数组转换为字符串

       //  7.数组转换为字符串
        var arr6 = [1, 23, 'come on', 4, 56, 3, '你好', 56, 7, 2];
        console.log(arr6);
        // (1)toString() 可以将数组转换为字符串,中间默认用逗号隔开
        console.log(arr6.toString()); // 1,23,come on,4,56,3,你好,56,7,2
        // (2)join( '字符' ) 括号里面写什么就用什么符号隔开   (推荐使用)
        console.log(arr6.join(' - '));  //1 - 23 - come on - 4 - 56 - 3 - 你好 - 56 - 7 - 2
        console.log(arr6.join(' & '));  //1 & 23 & come on & 4 & 56 & 3 & 你好 & 56 & 7 & 2

8.数组排序

        var arr = [1, 2, 3, 4, 5, 2, 4, 5, 1]
        for(var i=0;i<arr.length-1;i++){
            for(var j=0;j<arr.length-i-1;j++){
                // 从小到大排序
                // if(arr[j]>arr[j+1]){  结果为:[1, 1, 2, 2, 3, 4, 4, 5, 5]
                // 从大到小排序
                if(arr[j]<arr[j+1]){    //结果为: [5, 5, 4, 4, 3, 2, 2, 1, 1]
                    var tem=arr[j]
                    arr[j]=arr[j+1]
                    arr[j+1]=tem
                }
            }
        }
        console.log(arr)

9. 数组翻转

       // 10翻转数组
        var fruits = ["Banana", "Orange", "Apple", "Mango"];
        console.log(fruits.reverse())  // ['Mango', 'Apple', 'Orange', 'Banana']

10. 合并数组

 //  11 合并数组
 var hege = ["Cecilie", "Lone"];
var stale = ["Emil", "Tobias", "Linus"];
console.log(hege.concat(stale)) // ['Cecilie', 'Lone', 'Emil', 'Tobias', 'Linus']

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值