首页 > 其他分享 >ES6-3

ES6-3

时间:2022-09-19 11:58:32浏览次数:48  
标签:ES6 console log value add let id

    window.onload = function () {
        // ---------------------------------------数组解构-----------------
        let [x, y, z] = [true, [1, 2, 3], { id: 1 }];
        //等价
        // x=true;
        // y=[1,2,3];
        // z={id:1};
        let arr = [10, 20];
        if (arr[0]) {
            let x2 = arr[0]
        } else {
            let x2 = 1;
        }
        //简写
        let x2 = arr[0] || 1;
        //es6
        let [x3 = 1, x4 = 1] = arr;

        let [xx3 = 1, xxx4 = 1] = [undefined, null];   //xxx3=1,xxx4=null   undefined默认值生效  
        //对象解构

        let obj1 = {
            id: 999,
            name: 'kk',
            data: {
                name: 'bb',
                title: 'tt'
            },
            res: {
                data: {
                    act: '888act',
                    func: '999func'
                }
            }
        }
        // let id = obj1.id;
        // let act = obj1.res.data.act;
        //等价于  ES6
        let { id: _id = 1, act: _act = 'actdefault' } = obj1;     //:改的别名 = 给的默认值  es6更方便
        console.log(obj1);
        console.log(_id);
        //--------------------------------------------------------------------------------------------------------
        let arrk = [1, 2, 3, 4, 5, 6, 7, 1, 2, 5, 6, 7, 9, 10];
        const arrs = new Set();
        arrs.add(1).add(2).add(3).add(2); console.log(arrs);  //  {1,2,3}
        arrs.add(1).add(2).add(3).add('2'); console.log(arrs);  //  {1,2,3,'2'}  进行的是类型匹配

        const arr3 = new Set();
        arr3.add(arrk);
        console.log(arr3);    //这样没去重,相当于把arrk 作为一个对象添加进去了

        var arrs4 = new Set(arrk); console.log(arrs4);    //去重后的arrk   但不是数组了

        arrk.forEach((i) => {
            arrs.add(i);
        })
        console.log(arrs);

        let obj3 = new Object();
        obj3.id = 1;
        obj3['msg'] = 'no data';    //这添加的是属性
        //   obj3[msg] = 'nodata';       //msg 这只是一个变量  

        Array.from(arrs4);  //{}对象转数组
        [...arrs4];   //{}对象转数组


        // Array.from(arrs4((i) => {
        //     i > 5
        // }));

        console.log("//////////////////")
        console.log(Array.from(new Set(arrk.filter(i => i > 5))))    //去重排序

        const arr6 = [{ value: 30 }, { value: 10 }, { value: 3 }, { value: 60 }, { value: 30 }, { value: 30 }, { value: 30 }, { value: 30 },]  //去掉含3的

        let kk = arr6.filter(i => (i.value / 3 == 0));
        console.log([...(new Set(arr6.filter(i => ((i.value / 3) != 0))))])
    }

 

标签:ES6,console,log,value,add,let,id
From: https://www.cnblogs.com/soulice/p/16707244.html

相关文章

  • ES6全
    <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metahttp-equiv="X-UA-Compatible"content="IE=edge"><metaname="viewport"conten......
  • ES6 对String做的常用升级优化
    ES61.let有什么用,为什么有了var还要使用let在ES6之前,声明变量只能用var,var声明变量有很多不合理的点,准确的说是因为ES5中没有块级作用域是很不合理的,甚至可以说是一门语......
  • ES6 let关键字和var关键字的区别
    建议:在默认情况下使用const,而只有在你知道变量值需要被修改的情况下使用let......
  • Es6 模块化规范(import)
    index.js文件://第1种导出方式exportletaddress="cz";exportletobj={b:2};//import/export输出的是值的引用address="河北省沧州市"//当前文件执行完......
  • 了解 ES6 中 var、let 和 const 的范围
    了解ES6中var、let和const的范围了解ES6中的全局、本地和块级作用域发病前ES2015(ES6),这曾是statement是在JavaScript中声明变量的唯一选项。然而,由于......
  • new Set()的基础用法(ES6)
    1、什么是Set()Set是es6新增的数据结构,似于数组,但它的一大特性就是所有元素都是唯一的,没有重复的值,我们一般称为集合。Set本身是一个构造函数,用来生成Set数据结构2、......
  • 学习现代 JavaScript (ES6+) 的基础知识
    学习现代JavaScript(ES6+)的基础知识您应该在代码中开始使用的10个现代功能您可能已经知道JavaScript是一种功能丰富的编程语言,每次更新都会不断增强。有很多事......
  • es6中箭头函数
    箭头函数相当于匿名函数,简化了函数定义。 箭头函数有两种写法,当函数体是单条语句的时候可以省略{}和return。另一种是包含多条语句,不可以省略{}和return。 特点箭......
  • ES6 关键字 let 和 ES5 及以前关键字 var 的区别
    var在ES5及以前,通过var在块级作用域中声明的变量,外边也可以访问。块级作用域就是一对{}的作用域;块级作用域可以是控制语句的作用域,也就是非函数的作用域。functionf()......
  • 对比es6class类和构造函数
    构造函数  在原来class类这个语法糖没有出来之前我们一般会把方法挂在prototype上为了防止过多的开辟内存1//构造函数-------------------------------......