12 2019 档案
摘要:基本概念 Generator 函数有多种理解角度。语法上,首先可以把它理解成,Generator 函数是一个 ,封装了多个内部状态。 执行 Generator 函数会返回一个遍历器对象,也就是说,Generator 函数除了状态机,还是一个遍历器对象生成函数。返回的遍历器对象,可以依次遍历 Gene
阅读全文
摘要:```javascript /** * es5:class 对象 */ function Car(option) { this.title = option.title; this.lunz = option.lunz; } Car.prototype.drive = function () { return this.title + " is drive.."; } const car = ne
阅读全文
摘要:# 解构对象 ```javascript /** * 解构:快捷,方便 * * 对象解构 */ { var expense = { type: "es6", amount: "45" }; //1.ES5 // var type = expense.type; // var amount = exp
阅读全文
摘要:扩展运算符 扩展运算符(spread)是三个点(...)。它好比 rest 参数的逆运算(函数),将一个数组转为用逗号分隔的参数序列。 rest: 变量将多余的参数放入数组中。 spread(扩展):rest 参数的逆运算,将一个数组转为用逗号分隔的参数序列。 总结:二者为逆操作。 该运算符主要用于
阅读全文
摘要:函数参数默认值 ES6 之前,不能直接为函数的参数指定默认值,只能采用变通的方法。 面代码检查函数 的参数y有没有赋值,如果没有,则指定默认值为 。这种写法的 缺点在于,如果参数y赋值了,但是对应的布尔值为 ,则该赋值不起作用 。就像上面代码的最后一行,参数 等于空字符,结果被改为默认值。 为了避免
阅读全文
摘要:``` /** * 对象的扩展 * * 增强对象字面量 * * 解决问题:缩减代码 */ { /** * 1.属性简表示法 * 变量foo直接写在大括号里面。这时,属性名就是变量名, 属性值就是变量值 */ const foo = 'bar'; const baz = { foo }; // baz // {foo: "bar"} // 等同于 // const baz = { foo: foo
阅读全文
摘要:``` / 1.箭头函数语法 / const double1 = function (number) { return number 10; } const double2 = (number) = { return number 20; } const double3 = (number) = n
阅读全文
摘要:模板字面量的最简单语法,是使用反引号( `)(Tab上面那个键)来包裹普通字符串,而不是用双引号或单引号。 <!DOCTYPE html Document //变量 let name = "Nicholas"; //方法 function makeUpperCase(word) { return w
阅读全文