为了账号安全,请及时绑定邮箱和手机立即绑定
  • map.entries() 显示全部

    查看全部
  • map 类型初始化 赋值    添加数据  删除数据 判断是否存在

    查看全部
  • Map()   键 可以是多种数据类型

    查看全部
  • Set  合并  去重,交集,差集

    查看全部
  • Set (arr) 只能传入数组, 而且有去重效果

    查看全部
  • filter  过滤 传统函数写法

    查看全部
  • filter  过滤 箭头函数写法

    查看全部
  • ...num   扩展运算符与循环遍历结合实现动态运算

    查看全部
  • Testt

    查看全部
  • map定义

    const map  = new Map([

        ["s1","AS1"],

        ["s2","AS2"]

    ]);


    map.set("s3","AS3"); //增加

    map.delete("s2"); //删除

    console.log(map.has("s3")); //判断是否存在

    console.log(map);   //输出


    // map转set

    console.log(...map2.values()); //将value转成数组

    let arr1 = [...map2.values()] ;

    let arr2 = [...map2.entries()] ; 将key-value 转成数组

    查看全部
  • Set 集合 接受数组的格式

    let arr = [3,4,5,6,6,2]

    let set1 = new Set(arr); //去重,输出3,4,5,6,2

    set.add(8);

    set.delete(3);


    let set4=new Set([...set2,...set3]); //合并去重

    let set5=new Set(...set2.filter(x->set3.has(x))) //取交集

    let set5=new Set(...set2.filter(x->!set3.has(x))) //取差集

    ;


    查看全部
  • let list=[2,3,4,5,6,7];

    for (const i in list){

        //in  关键字输出的是坐标

    }

    for (const of list){

        // of 关键字输出的是具体的元素

    }


    list.forEach((n,i) => {

        console.log(i);  //坐标

        console.log(n); // 元素

    }

    查看全部
  • 尾调用的作用: 共用前一个方法的内存空间 提高运行速度 ,尤其递归,很适合使用尾调用

    满足尾调用的条件:最后一步调用了其他函数  最后一步调用的函数没有参与运算 

    let fun4=()=>{

        return fun1(2,3)+2 //<----------不属于尾函数调用

    }

    查看全部
  • 箭头函数的写法:

    let fun3=(x,y)=>{

        return x+y;

    }

    无参数的时候

    let fun3=()=>{

        console.log('测试方法');

    }

    查看全部
  • 模板字符串拼接,使用$()的方式。

    原:console.log( 'name='+name;

    现:consloe.log( `name=${name}`  注意此处不是单引号或者双引号,而是反单引号  ` 

    查看全部
  • 1,let不允许重复定义,与var不同

    2,let是局部变量,与var不同。var定义的是全局变量

    3,const定义的是一个不可修改的常量,不可以重复赋值

    4,indexof返回的是0/-1, es6中用includes方法代替 返回true / false;

    5,startWith和endWith 也是返回true/false


    查看全部
  • 要注意const声明的常量不是值不能动,而是指向的那个内存地址所保存的数据不得改动。对于简单的数据类型(Number, String, Bool)值就保存在那个内存地址,所以值就不能变了。而复合类型的(最主要的是数组和对象)里面的内容是可变的,但指向还是不能变。

    From阮一峰老师的《EMCAScript 6 入门》

    查看全部
  • 课程安排
    查看全部
    0 采集 收起 来源:课程简介

    2020-03-23

  • 课程目标
    查看全部
    0 采集 收起 来源:课程简介

    2020-03-23

  • JS的问题出现在哪儿
    查看全部
    0 采集 收起 来源:课程简介

    2020-03-23

  • //1et str="name="+userName+",age="+userage+",1ogo="+1ogo ; 

    let str= name1=${userName },age1=${userAge},1ogo3=${logo}^ ; 

    console. log(str);


    查看全部
  • ●问题2 :字符串方面的处理

    ●indexOf

    ●includes、 startsWith、 endsWith

    ●模板字符串


    查看全部
  • 把ES6以上的版本,转换成ES5

    首先把2015的插件卸载掉:npm unistall --save babel-preset-es2015

    对ES以后的所有版本都用env,代表ES6+:npm install babel-preset-env -D

    .babelrc文件中改为:{"presets": ["env"]}


    查看全部
  • 半自动转换。。也可以说是手动

    .babelrc:

    {"presets": ["es2015"],"plugins":[]}

    "scripts":{

    "build":"babel src/index.js -o dist/index.js"

    }

    npm run build


    "scripts":{

        "build":"babel src -d dist"

      },

    复制到package.json中

    src同级新建一个.babelrc文件,将{"presets": ["es2015"],"plugins":[]}复制进去

    这时候运行npm run build

    查看全部
  • 1.手动单个文件转换:babel es6.js --presets es2015

    这行命令行仅限在命令行看转换后代码,导出为另一个文件需要:

    babel es6.js -o js2.js --presets es2015

    -o为out表示输出

    2.将文件夹src底下的文件批量转换到dist文件夹中:

    babel src -d dist --presets es2015

    http://img1.sycdn.imooc.com//5e70835a0001ebc308280547.jpg

    查看全部
  • 用于高版本ES转成低版本ES

    http://img1.sycdn.imooc.com//5e7079fb0001684a09060450.jpg

    http://img1.sycdn.imooc.com//5e707a2300017c2b09060803.jpg

    查看全部
  • ES全家福

    要点1:ES版本很多,为什么经常听到ES6

    ES的版本命名规则

    区分ES5和ES6以后的版本

    ES2015、2016、2017、2018、2019泛称ES6。细分的话就是ES6,7,8,9,10

    要点2:各个版本细节

    ES3 1999年12月颁布

    ES4 2008年7月发布之前废弃

    ES5 2009年12月发布

    ES5升级到ES2015,添加了类和模块、箭头函数等很多变革

    ES2015升级到ES2016,添加Array.prototype.includes、求幂操作符

    ES2016升级到ES2017,添加字符串填充、函数参数的尾逗号、增加异步函数等操作。

    ES2017升级到ES2018,添加共享内存和Atomics、用于正则表达式的“dotall”标志。

    ES2018升级到ES2019,添加更友好的JSON.stringify,为Symbol类型增加Symbol.protptype.description的一个访问器属性。

    查看全部
    0 采集 收起 来源:ES全家福

    2020-03-17

  • JS1内容:

    import js2 from './js2.js';

    let m=0;

    function fun2(){

      return 666+js2.m1

    }

    export default{

      name:'测试网页01',

      fun:(x)=>{

        return `传参是${x}`

      },

      fun2:()=>{

        return fun2()

      }

    }

    JS2内容:

    let m=100;

    let n=200;

    export default{

      m1:m+n,

    }

    HTML内容:

    <!DOCTYPE html>

    <html dir="ltr">

      <head>

        <meta charset="utf-8">

        <title></title>

      </head>

      <body>


      </body>

      <script type="module">

        import js1 from './js1.js';

        console.log(js1.name);

        console.log(js1.fun(999));

        console.log(js1.fun2());

      </script>

    </html>


    查看全部
  • 解决模块引用时跨域问题-安装live server插件,且通过此插件运行访问网页

    跨域-浏览器同源(同一个域)策略的限制

    浏览器类似于Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https.的报错,基本都是跨域问题

    查看全部
  • Module语法:

    export:暴露     import:引入

    JS文件中export default{}中的内容是别的文件通过inport引入可以使用的


    查看全部
  • Map的使用方法

    对象类型key只能是字符类型,Map种的key可以是各种类型。

    let num = 123;//数字

    let arr = [1,2,3,4];//数组

    let fun = function(){};//函数

    let obj = {};//对象

    //一般情况下,如果是变量类型用Let,对象类型集合类的用const创建

    const map1 = new Map();

    map1.set(num,'q1');

    map1.set(arr,'q2');

    map1.set(fun,'q3');

    map1.set(obj,'q4');

    map1.set('aaa','q5')

    console.log(map1.keys);

    for(let key of map1.keys()){

    console.log(key);

    console.log(typeof(key));

    }

    实例2:

    const map2 = new Map([

    ['s1','as1'],

    ['s2','as2'],

    ['s3','as3'],

    ['s4','as4']

    ])

    map2.set('s5','as5');

    map2.delete('s4');

    console.log(map2.has('s4'));

    console.log(map2.has('s3'));

    console.log(map2);

    console.log(map2);

    console.log(...map2.values());//将values转成数组,直接进行展示

    let arr1 = [...map2.values()];//转存value值

    console.log(arr1);

    let arr2 = [...map2.keys()];//转存key

    console.log(arr2);

    let arr3 = [...map2.entries()];//整体转存

    console.log(arr3);

    for(let value of map2.values()){

    console.log(value);

    }


    查看全部
  • set使用方法

    set用来数组去重,合并、交集、差集。set里接收的是数组

    let arr=[5,13,6,7,10,5,13]

    let arr1 = new Set(arr)//去重

    console.log(arr1);


    let arr2 = new Set([4,6,8,2,1]);

    let arr3 = new Set([3,6,8,7,1])

    arr2.add(0)

    arr2.delete(8)

    console.log(arr2);

    let arr4 = new Set([...arr2,...arr3])//合并两个Set,并且去重,这是set的一个特点,因为set里面本身不允许重复

    console.log(arr4);

    let arr5 = new Set([...arr2].filter(x=>arr3.has(x)))//取交集

    console.log(arr5);

    let arr6 = new Set([...arr2].filter(x=>!arr3.has(x)))//差集

    console.log(arr6);

    let arr66 = new Set([...arr2].filter(function(x){

    return arr3.has(x)

    }))//ES5函数写法

    console.log(arr66);


    查看全部
  • filter:作用是过滤、筛选

    let num=[5,13,6,7,10,5]

    let num1=num.filter(x=>x==5)

    let num2=num.filter(x=>x!==5)

    console.log(num1,num2);


    查看全部
  • ...:扩展运算符

    let add=(a,b,c)=>{

    return a+b+c

    }

    let num=[2,3,6]

    let n=add(...num)

    console.log(n);


    let add=(...c)=>{

    let sum=0;

    for (var num of c) {

    sum+=num;

    }

    return sum

    }

    let num=[5,13,6,7]

    let n=add(...num)

    console.log(n);


    查看全部
  • 常规循环:while、for

    ES6循环:for ...of循环、for ...in循环forEach循环

    http://img1.sycdn.imooc.com//5e6f39d900010e2007860506.jpg

    for in in得到数组的下标

    for of of得到数组的内容

    for each 两个参数分别得到数组的内容、数组的下标

    查看全部
  • 尾调用可优化内存空间,递归是尾优化的典型应用

    http://img1.sycdn.imooc.com//5e6f302000018d2907360410.jpg

    查看全部
    1. 函数默认值、多参数的写法

    function fun1(x=0,y=0){

    return x+y;

    }

    console.log(fun1(2,1));


    function aaa(...n){

    console.log(n.length,n,n[3]);

    }

    aaa(1,2,3,4,5,6,7,1)

    2.箭头函数

    let fun2=(x=0,y=2)=>{

    return x+y;

    }

    console.log(fun2(3,7));

    // 只有一个参数时,()可以省略,没有参数或者两个及以上参数必须有()

    let fun3=x=>{

    return x;

    }

    // 如果函数体里边只有一句话,大括号也可以不要,return单词省略不写

    let fun4=x=>x+1;//隐式返回

    console.log(fun3(111),fun4(5));

    3.函数尾调用

    查看全部
  • function aaa(a,b,c,d){

    return a[0]+b+a[1]+c+a[2]+d

    }

    function bbb(userName,userAge,height){

    return aaa`姓名=${userName},年龄=${userAge},身高=${height}`

    }

    console.log(bbb('黄良玉','28','168'));


    查看全部
    1. indexOf判断指定字符串是否存在,不存在就返回一个-1

      if(n==-1){}else{}

    2. includes判断是否存在,返回true或false

      if(n){}else{}

    3. startWith,endWith是否以?开头/结尾返回true或false

      startWith("a",4)参数4表示以索引为4开始(0开始数)

      endWith("a",9)参数就表示在前九个字符是否以a结尾(以1开始数)

    查看全部
  • 返单引号拼接字符串可以加入函数,函数可以带入参数,参数可以用返单引号任意拼接

    函数传参如图

    http://img1.sycdn.imooc.com//5e6b38120001426c08080453.jpg

    查看全部
  • 字符串拼接

    用返单引号``和占位符${}形式拼接字符串

    注意:凡是出现在返单引号的内容都会原样输出,如果加入人为换行等操作,都会原样输出。所以在返单引号里拼接字符串最好不要加入换行等操作。

    查看全部
  • 1.let不允许重复声明

    2.let创建局部变量(块级)

    3.同一个块,不允许重复的变量声明

    const:定义常量

    查看全部
  • 用来判断指定字符串是否存在

    1. indexOf不存在时返回-1,存在时返回字符串开始位置

    2. includes存在时返回true,不存在时返回false

    3. startsWith判断是否以某字符串开头,array.startsWith(string,num)表示从num位置是否以string开头,num表示开始查找的位置,不带num参数从0开始找

    4. endsWith判断是否以某字符串结尾,array.ensWith(string,num),表示前num个字符是否以string结尾,注意要从1开始数,startsWith是从0开始数。

    查看全部
  • http://img1.sycdn.imooc.com//5e6b270100017b3110790182.jpgES、JS之间的关系

    查看全部
    1. 用let定义变量不允许重复声明

    2. let创建局部变量(块级)。var创建的是全局变量。

    3. 同一个块,不允许重复的变量声明

    4. const用来创建常量,创建后不允许修改

    查看全部
首页上一页123下一页尾页

举报

0/150
提交
取消
¥36.00
立即购买
课程须知
1、掌握HTML+CSS 2、掌握原生JS
老师告诉你能学到什么?
1、掌握ES6 2、掌握ES7-10新增api 3、掌握babel转换器的使用
加群二维码
  • 慕课前端核心用户群
  • 群号:908286289
  • 付费用户专享
  • 技术学习型社群

微信扫码,参与3人拼团

微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!