JavaScript(js)中数组Array的常用方法

目录

Array.indexOf()

Array.includes()

Array.some()

Array.map()

Array.foreach()

Array.filter()

Array.push()

Array.concat()

Array.toString()

Array.splice()

数组中根据指定索引删除: 

 数组中根据指定元素删除:

Array.join()

Array.entries()


Array.indexOf()

indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。

如果没有找到匹配的字符串则返回 -1。

注意: indexOf() 方法区分大小写。

    console.log(["a", "b", "c"].indexOf("a")); // 0
    console.log(["a", "b", "c"].indexOf("d")); // -1

Array.includes()

includes() 方法用来判断一个数组是否包含一个指定的值,如果是返回 true,否则false。

    console.log(["a", "b", "c"].includes("a")); // true
    console.log(["a", "b", "c"].includes("d")); // false

Array.some()

console.log([1, 2, 3, 4, 5].some(x => x > 3)); //true

 some() 方法用于检测数组中的元素是否满足指定条件(函数提供)。

some() 方法会依次执行数组的每个元素:

  • 如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测。
  • 如果没有满足条件的元素,则返回false。

注意: some() 不会对空数组进行检测。

注意: some() 不会改变原始数组。

Array.map()

    let arr = [1, 2, 3];
    console.log("arr-初始:", arr);

    let arr2 = arr.map((item) => item * 2);
    console.log("arr2:", arr2);
    console.log("arr:", arr);

 map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。

map() 方法按照原始数组元素顺序依次处理元素。

注意: map() 不会对空数组进行检测。

注意: map() 不会改变原始数组。

如果是数组对象的话,注意指针:

 

    let arr = [
      { username: "张三" },
      { username: "李四" },
      { username: "王五" },
    ];
    console.log("arr-初始:", arr);

    let arr2 = arr.map((item) => (item.id = "aaa"));
    console.log("arr2:", arr2);
    console.log("arr:", arr);

 

 

Array.foreach()

["a", "b", "c"].forEach(item => {
      console.log(item);
    });
    // a
    // b
    // c

forEach() 方法对数组的每个元素执行一次提供的回调函数。

注意: forEach() 对于空数组是不会执行回调函数的。

Array.filter()

    console.log(
      ["c", "c++", "java", "javascript"].filter(item => item.length < 4)
    ); //["c", "c++"]

filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。

注意: filter() 不会对空数组进行检测。

注意: filter() 不会改变原始数组。

Array.push()

    const arr = ["a", "b", "c"];
    let result = arr.push("d");//返回新的数组长度

    console.log(arr);//["a", "b", "c", "d"]
    console.log(result);// 4

push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。它直接修改当前数组,而不是创建一个新的数组。如果想象数组的开头添加元素,用unshift()方法,如下

    const arr = ["a", "b", "c"];
    let result = arr.unshift("d"); //返回新的数组长度

    console.log(arr); //["d", "a", "b", "c"]
    console.log(result); // 4

Array.concat()

concat() 方法用于合并两个或多个数组。此方法不会更改现有数组,而是返回一个新数组。

    const arr = ["a", "b", "c"];
    const result = arr.concat(["d", "e", "f"]);

    console.log(result); //["a", "b", "c", "d", "e", "f"]
    console.log(arr); //["a", "b", "c"]

 

 

Array.toString()

console.log([1, 2, 'a', '1a'].toString()); // expected output: "1,2,a,1a"

toString()方法可以把数组转换为字符串,并返回结果

Array.splice()

Array.splice(索引,删除个数,插入的值) 

    let arr = [10, 12, 13, 14, 15];
    let result = arr.splice(2, 0, "hello");

    console.log(result); //[]
    console.log(arr); //[10, 12, "hello", 13, 14, 15]
    let arr = [10, 12, 13, 14, 15];
    let result = arr.splice(2, 1, "hello");

    console.log(result); //[13]
    console.log(arr); //[10, 12, "hello", 14, 15]
    let arr = [10, 12, 13, 14, 15, "hello"];
    let result = arr.splice(2, 3);

    console.log(result); //[13, 14, 15]
    console.log(arr); // [10, 12, "hello"]
    let arr = [10, 12, 13, 14, 15, "hello"];
    let result = arr.splice(2);

    console.log(result); //[13, 14, 15, "hello"]
    console.log(arr); // [10, 12]

数组中根据指定索引删除: 

    let arr = ["vue", "react", "angular"];
    console.log("删除前arr:", arr);

    let result = arr.splice(0, 1); //第一个参数为删除值的索引

    console.log("删除值:", result);
    console.log("删除后arr:", arr);

 数组中根据指定元素删除:

    let arr = ["vue", "react", "angular"];
    console.log("删除前arr:", arr);
    for (let i in arr) {
      if (arr[i] === "react") {
        let result = arr.splice(i, 1);
        console.log("删除值:", result);
      }
    }
    console.log("删除后arr:", arr);

Array.join()

join() 方法将一个数组(或一个类数组对象)的所有元素连接成一个字符串并返回这个字符串。如果数组只有一个项目,那么将返回该项目而不使用分隔符。

join()不会改变原始数组

join()会生成新的数组

    const elements = ["C", "python", "Java"];
    let returnVal = elements.join();

    console.log(returnVal); 
    console.log(elements);

    console.log(elements.join(""));
    console.log(elements); 

    console.log(elements.join("-")); 
    console.log(elements); 

Array.entries()

entries()方法返回一个新的Array Iterator对象,该对象包含数组中每个索引的键/值对。

    let iterator = ["a", "b", "c"].entries();
    console.log("iterator:", iterator);

    for (let item of iterator) {
      console.log("item", item);
      console.log("item[0]:", item[0]);
      console.log("item[1]:", item[1]);
    }

    let iterator = ["a", "b", "c"].entries();
    console.log("iterator:", iterator);

    for (const [index, item] of iterator) {
      console.log("index:", index);
      console.log("item:", item);
    }

  • 10
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JavaScript数组有许多常用方法可以帮助我们处理和操作数组。以下是一些常见的JavaScript数组方法: 1. Array.concat(arr1, arr2...):将两个或多个数组合并成一个新数组。原数组不会被改变。 2. Array.splice(index, howmany, arr1, arr2...):用于添加或删除数组的元素。从指定的index位置开始删除howmany个元素,并将arr1、arr2...依次插入到数组。如果howmany为0,则不会删除任何元素。原数组会被改变。 3. Array.map(function):对数组的每个元素执行指定的函数,并将函数的返回值组成一个新的数组。原数组不会被改变。 4. Array.filter(function):根据指定函数的条件,筛选出满足条件的元素,返回一个新的数组。原数组不会被改变。 5. Array.forEach(function):对数组的每个元素执行指定的函数,没有返回值。原数组不会被改变。 6. Array.find(function):返回数组满足指定条件的第一个元素。如果没有找到满足条件的元素,则返回undefined。 7. Array.findIndex(function):返回数组满足指定条件的第一个元素的索引。如果没有找到满足条件的元素,则返回-1。 8. Array.reduce(function):对数组的所有元素执行指定的函数,将它们归纳为一个单一的值。原数组不会被改变。 这些是JavaScript数组的一些常用方法,它们可以帮助我们在处理数组时更加方便和高效。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [js数组常用方法](https://blog.csdn.net/u012451819/article/details/125768796)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值