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


     
  • 相关阅读:
    Vue生态圈之----vue-router----路由配置
    Vue生态圈之----vue-router----基础实例
    Webpack学习整理之----最简单的实例
    Webpack学习整理之----配置
    Webpack学习整理之----概念
    多个系统域名使用同一认证中心做单点登录的做法
    JavaScript基础概念之----Commonjs、CMD、AMD、UMD
    npm 镜像及使用
    nvm 指令
    mongodb安装配置启动踩的坑
  • 原文地址:https://www.cnblogs.com/z-dl/p/8193216.html
Copyright © 2011-2022 走看看