• 简单整理数组的用法


    map

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

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

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

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

    Array.find()

    find() 方法返回通过测试函数的第一个数组元素的值。

    此例查找(返回)第一个大于 18 的元素(的值):

    var numbers = [4, 9, 16, 25, 29];
    var first = numbers.find(myFunction);

    document.getElementById("demo").innerHTML = "大于 18 的第一个值是:" + first;

    function myFunction(value,) {
    return value > 18;
    }

    filter

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

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

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

    如何使用 join() 方法将数组的所有元素组成一个字符串

    join() 方法也可将所有数组元素结合为一个字符串。

    它的行为类似 toString(),但是您还可以规定分隔符:

    var arr = new Array(3);
    arr[0] = "George"
    arr[1] = "John"
    arr[2] = "Thomas"

    document.write(arr.join());

    document.write("<br />");

    document.write(arr.join("."));

    合并数组concat
    var arr = new Array(3)
    arr[0] = "George"
    arr[1] = "John"
    arr[2] = "Thomas"

    var arr2 = new Array(3)
    arr2[0] = "James"
    arr2[1] = "Adrew"
    arr2[2] = "Martin"

    document.write(arr.concat(arr2))

    Array.prototype.includes()方法

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

    var array = [1, 2, 3];
    
    console.log(array.includes(2));
    // expected output: true
    
    var pets = ['cat', 'dog', 'bat'];
    
    console.log(pets.includes('cat'));
    // expected output: true
    
    console.log(pets.includes('at'));
    // expected output: false

    Array.prototype.includes()方法接收两个参数:类似indexOf

    • 要搜索的值
    • 搜索的开始索引。

    当第二个参数被传入时,该方法会从索引处开始往后搜索(默认索引值为0)。若搜索值在数组中存在则返回true,否则返回false。 且看下面示例:

    ['a', 'b', 'c', 'd'].includes('b')         // true
    ['a', 'b', 'c', 'd'].includes('b', 1)      // true
    ['a', 'b', 'c', 'd'].includes('b', 2)      // false
    

    乍一看,includes的作用跟数组的indexOf重叠,为什么要特意增加这么一个api呢?主要区别有以下几点:

    • 返回值。看一个函数,先看他们的返回值。indexOf的返回数是值型的,includes的返回值是布尔型,所以在if条件判断的时候includes要简单得多,而indexOf 需要多写一个条件进行判断。

      splice() 方法可用于向数组添加新项:

      实例

      var fruits = ["Banana", "Orange", "Apple", "Mango"];
      fruits.splice(2, 0, "Lemon", "Kiwi");
      

       

      第一个参数(2)定义了应添加新元素的位置(拼接)。

      第二个参数(0)定义应删除多少元素。

      其余参数(“Lemon”,“Kiwi”)定义要添加的新元素。

      splice() 方法返回一个包含已删除项的数组:

    isNaN() 方法

    如果参数是 NaN,则全局 isNaN() 方法返回 true。否则返回 false:

    实例

    isNaN("Hello"); 

    Popping 和 Pushing

    在处理数组时,删除元素和添加新元素是很简单的。

    Popping 和 Pushing 指的是:

    从数组弹出项目,或向数组推入项目。

    Popping

    pop() 方法从数组中删除最后一个元素:

    实例

    var fruits = ["Banana", "Orange", "Apple", "Mango"];
    fruits.pop();    

    Pushing

    push() 方法(在数组结尾处)向数组添加一个新的元素:

    实例

    var fruits = ["Banana", "Orange", "Apple", "Mango"];
    fruits.push("Kiwi");   

    Promise.prototype.finally() -es9

    这个基本没什么好讲的,看名字就能看懂了。其用法如下:

    promise
      .then(result => {···})
      .catch(error => {···})
      .finally(() => {···});

    split

    split() 方法用于把一个字符串分割成字符串数组。
  • 相关阅读:
    HDU 5001 Walk (暴力、概率dp)
    Codeforces Round #265 (Div. 2) C 暴力+ 找规律+ 贪心
    zoj 3812 We Need Medicine (dp 状压)
    ZOJ
    ZOJ 3811 / 2014 牡丹江赛区网络赛 C. Untrusted Patrol bfs/dfs/并查集
    POJ 2411 状压dp
    HDU 3001 三进制 状压dp
    POJ 2096 (dp求期望)
    poj 3311 状压dp 最短路
    数据挖掘的基本概念
  • 原文地址:https://www.cnblogs.com/zfdbk/p/11357108.html
Copyright © 2020-2023  润新知