![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JavaScript进阶----ES6
文章平均质量分 80
结合阮一峰老师教程,整理归纳的ES6学习笔记。
高级白嫖工程师
我不是码神
展开
-
10.Symbol类型
1.Symbol的概述与注意点概述引入的原因:在实际开发中,由于对象属性名都是字符串,很容易造成变量冲突,为了解决这一问题,ES6引入symbol类型;Symbol类型:表示独一无二的值;自此,JavaScript已经有七种数据类型:Undefined、null、String、Boolean、Object、Number、Symbol;Symbol值通过symbol函数生成;也就是说自此属性名可以是字符串也可以是symbol值;注意点Symbol值作为属性名时,该属性仍是公开属性,不是私有原创 2020-10-11 16:30:24 · 643 阅读 · 0 评论 -
09.ES6中对象的扩展
1.属性和方法的简介表示法属性ES6允许直接写入变量和函数作为对象的属性和方法;// es6可以直接写入变量和函数表示对象属性和方法let name = "peanut";let obj1 = {name}; // {name: "peanut"}ES6允许可以只写属性名不指定属性值,此时属性值等于属性名所代表的变量;// ES6允许可以只写属性名不指定属性值,此时属性值=属性名所代表的变量的值;function fn1(x,y) { console.log({x,y});原创 2020-10-11 16:29:17 · 154 阅读 · 0 评论 -
08.数组的扩展
1.扩展运算符含义扩展运算符是三个点“…”,如图rest参数的逆运算,能将数组转换为用逗号分隔的参数序列;该运算符主要用于函数调用:// 用于函数调用function fn1(x,y) { console.log(x + y);}const numbers = [1,2]; fn1(...numbers);// 3可以和正常参数结合使用:// 可以和正常的函数参数结合使用function fn2(v,w,x,y,z){ console.log(v,w,x,y,原创 2020-10-07 23:07:33 · 173 阅读 · 0 评论 -
07.ES6函数的扩展
函数参数的默认值基本用法ES6之前只能采用变通的方法为函数参数指定默认值:// ES6之前变通的方法为函数参数指定默认值function fn1(x,y){ /* y = y || "World"; // 短路运算 return x + y; 该方法并不完美,y传入的值为false时无法正确设置默认值*/ // 判断y是否等于false if(typeof y === "undefined"){ y = "World"; } r原创 2020-10-07 23:06:50 · 150 阅读 · 0 评论 -
06.数值的扩展
1.二进制和八进制表示法ES6提供二进制和八进制的新写法:二进制:0b(或0B);八进制:0o(或0O);// 二进制:0b/0Blet res1 = (0b111110111 === 503); console.log(res1); // true// 八进制:0o/0Olet res2 = (0o767 === 503);console.log(res2); // trueES5开始,严格模式下八进制数不允许使用前缀0表示;// 严格模式下,不允许使用0前缀表示八原创 2020-10-07 23:06:04 · 156 阅读 · 0 评论 -
05.正则表达式的扩展
1.RegExp构造函数回顾ES5中的RegExp构造函数;RegExp构造函数语法:/*text:正则表达式规则的字符串flag:修饰符*/let reg = new RegExp(text,flag);// 或者直接传入一个正则对象let reg1 = new RegExp(/xxx/g);ES5中RegExp构造函数的参数有两种情况1.传入两个参数:// 1.传入两个参数:一个字符串,一个修饰符字符let reg1 = new RegExp("^[\u4e00-\u原创 2020-10-05 21:00:14 · 127 阅读 · 0 评论 -
04.字符串的扩展
1.字符串的Unicode表示法JavaScript允许采用"\uxxxx"的形式表示一个字符,“xxxx”表示字符的Unicode码点;这种表示法仅限于表示码点在“\u0000~\uFFFF"之间的字符,超过这个范围的字符需要用2个双字节的形式表达;ES6对此进行了改进,只要将码点放入大括号就能正确解读该字符;==大括号表示法等价于utf-16编码;// JavaScript允许使用\uxxxx形式表示字符串console.log("\u0061"); // a// 局限性:超过\uFF原创 2020-10-04 17:19:00 · 313 阅读 · 0 评论 -
03.变量的结构赋值
1.数组的解构赋值基本用法:ES6允许按照一定模式从对象和数组中提取值,然后对变量进行赋值,称为解构;数组解构赋值本质上是一种模式匹配,只要等号两边的模式相同,左边的变量就会被赋予对应的值;<script> let [a,b,c] = [1,2,3]; console.log(a,b,c); // 1 2 3 // 只要等号两边的模式匹配,就能完成解构赋值 let [, , third] = ["aa","bb","cc"]; con原创 2020-10-04 17:17:30 · 142 阅读 · 0 评论 -
02.let和const命令
1.let变量声明—作用与var关键字类似let关键字的几个特点:不能重复声明同一个变量;let a = 1;let a = 1; // 抛出错误 Identifier 'a' has already been declared不存在变量提升;console.log(b);let b = 1; // 抛出错误,不存在变量提升 Cannot access 'b' before initialization用let声明的变量仅在块级作用域下有效;// 3.仅在块级作用域下有原创 2020-10-04 17:16:30 · 127 阅读 · 0 评论