zoukankan      html  css  js  c++  java
  • JS 类数组,字符串,转换成数组的方法

    类数组转换成数组:
    //定义一个类数组对象
    let arrayLike = {
        '0': 'a',
        '1': 'b',
        '2': 'c',
        length: 3
    };
    
    //1.ES5的写法
    var arr1 = Array.prototype.slice.call(arrayLike);
    var arr2 = [].slice.call(arrayLike);
    
    //2. ES6的写法
    let arr3 = Array.from(arrayLike)
    
    //打印的结果:
    console.log(arr1) //['a','b','c']
    console.log(arr2) //['a','b','c']
    console.log(arr3) //['a','b','c']
    //3. 任何 Iterator 接口的对象(参阅 Iterator),都可以用扩展运算符转为真正的数组。
    
    let nodeList = document.querySelectorAll('div');
    let array = [...nodeList];
    //对于那些没有部署 Iterator 接口的类似数组的对象,扩展运算符就无法将其转为真正的数组。
    
    let arrayLike = {
      '0': 'a',
      '1': 'b',
      '2': 'c',
      length: 3
    };
    
    // TypeError: Cannot spread non-iterable object.
    let arr = [...arrayLike];
    // 上面代码中,arrayLike是一个类似数组的对象,但是没有部署 Iterator 接口,扩展运算符就会报错。这时,可以改为使用Array.from方法将arrayLike转为真正的数组。

    字符串转换成数组:
    //定义一个字符串
    let str = 'abc'
    
    //ES5的写法
    let arr = [].slice.call(str)
    let arr1 = str.split('')
    
    //ES6的写法
    let arr2 = [...str]
    
    //打印的结果
    console.log(arr)  //['a','b','c']
    console.log(arr1) //['a','b','c']
    console.log(arr2) //['a','b','c']

    数组转成字符串:

    //定义一个数组
    let arr = [1,2,3,4,5]
    
    //方法一
    let str = arr.join('')
    //方法二
    let str1 = arr.toString().replace(/,+/g,"");
    
    //打印的结果
    console.log(str) // 12345
    console.log(str1) // 12345


     
  • 相关阅读:
    MySQL中表的基本操作1
    MySQL在表中加入记录
    GDB基本命令(整合)
    (转载)Linux的epoll模型
    不做采购,不知道销售有多蠢
    我的创业体会和大公司的做事比较
    需求问题排查
    我的创业体会和大公司的做事比较
    不同技术团队的配合问题及DevOps(不错的文章,来自infoq)
    不同技术团队的配合问题及DevOps(不错的文章,来自infoq)
  • 原文地址:https://www.cnblogs.com/z-dl/p/8193216.html
Copyright © 2011-2022 走看看