随笔分类 - ES6
摘要:Set ES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一的,没有重复的值 Set 本身是一个构造函数,用来生成 Set 数据结构。 通过add方法向 Set 结构加入成员,结果表明 Set 结构不会添加重复的值 Set 函数可以接受一个数组(或者具有 iterable 接口的其
阅读全文
摘要:ES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。 Array.from方法可以将 Set 结构转为数组。 扩展运算符内部调用的是数据结构的 Iterator 接口,因此只要具有 Iterator 接口的对象,都可以使用扩展运算符,比如 Map 结构、Set结构
阅读全文
摘要:概述 ES5 的对象属性名都是字符串,这容易造成属性名的冲突。比如,你使用了一个他人提供的对象,但又想为这个对象添加新的方法(mixin 模式),新方法的名字就有可能与现有方法产生冲突。如果有一种机制,保证每个属性的名字都是独一无二的就好了,这样就从根本上防止属性名的冲突。这就是 ES6 引入Sym
阅读全文
摘要:属性的简洁表示法 ES6 允许直接写入变量和函数,作为对象的属性和方法。这样的书写更加简洁。 方法也可以简写。 这种写法用于函数的返回值,将会非常方便。 CommonJS 模块输出一组变量,就非常合适使用简洁写法。 属性的赋值器(setter)和取值器(getter),事实上也是采用这种写法。 属性
阅读全文
摘要:扩展运算符 扩展运算符(spread)是三个点(...)。它好比 rest 参数的逆运算,将一个数组转为用逗号分隔的参数序列。 该运算符主要用于函数调用。 上面代码中,array.push(...items)和add(...numbers)这两行,都是函数的调用,它们的都使用了扩展运算符。该运算符将
阅读全文
摘要:1、函数参数的默认值 ES6 之前,不能直接为函数的参数指定默认值,只能采用变通的方法。 上面代码检查函数log的参数y有没有赋值,如果没有,则指定默认值为World。这种写法的缺点在于,如果参数y赋值了,但是对应的布尔值为false,则该赋值不起作用。就像上面代码的最后一行,参数y等于空字符,结果
阅读全文
摘要:二进制和八进制表示法 ES6 提供了二进制和八进制数值的新的写法,分别用前缀0b(或0B)和0o(或0O)表示。 如果要将0b和0o前缀的字符串数值转为十进制,要使用Number方法 Number.isFinite()用来检查一个数值是否为有限的(finite),即不是Infinity。 注意,如果
阅读全文
摘要:字符串的正则方法 字符串对象共有 4 个方法,可以使用正则表达式:match()、replace()、search()和split()。 ES6 将这 4 个方法,在语言内部全部调用RegExp的实例方法,从而做到所有与正则相关的方法,全都定义在RegExp对象上 String.prototype.
阅读全文
摘要:字符串的遍历接口 for...of循环遍历。 includes(),startsWith(),endsWidth() 传统上,JavaScript 只有indexOf方法,可以用来确定一个字符串是否包含在另一个字符串中。ES6 又提供了三种新方法。 includes():返回布尔值,表示是否找到了参
阅读全文
浙公网安备 33010602011771号