JavaScript的相关知识
Oject.assign()
// Cloning an object
var obj = { a: 1 };
var copy = Object.assign({}, obj);
console.log(copy); // { a: 1 }
// Merging objects
var o1 = { a: 1 };
var o2 = { b: 2 };
var o3 = { c: 3 };
var obj = Object.assign(o1, o2, o3);
console.log(obj); // { a: 1, b: 2, c: 3 }
console.log(o1); // { a: 1, b: 2, c: 3 }, target object itself is changed.
ES6之深层次的箭头函数
函数用=>定义
eg: x=>x*x
相当于 function(x){
retrun x*x
}
当参数大于一个时用()括起来
如果返回的是对象,则需要这样写
x => ({ fun: x })
箭头函数的最大作用就是修复了this的指向
在闭包函数中用箭头函数就不需要使用之前的hack方式修改this的指向,用箭头函数就可以了
箭头函数有几个使用的注意点:
1.函数体内的this对象,就是定义是所在的对象,而不是使用时所在的对象
2.不可以当做构造函数使用。也就是说,不可以使用new命令,否则会抛出错误
3.不可以使用arguments对象,该对象那个在函数体内不存在、如果要用可以使用Rest参数代替
4.不可以使用yeid命令,因此箭头函数不能用作Generator函数
箭头函数具体语法
() => { ... } // 没有参数
x => { ... } // 一个参数 一个标识符
(x, y) => { ... } // 几个参数
方法内容体:
x => { return x * x } // block块
x => x * x // expression表达式, 等同于上面一行
如果一个表达式是箭头函数内容体,你不需要括弧了:
asyncFunc.then(x => console.log(x));
而语句则是需要放入括弧中:
asyncFunc.catch(x => { throw x });
JavaScript 的 toString方法
语法 number.toString(radix) 参数值 参数 描述 radix 可选。规定表示数字的基数,使 2 ~ 36 之间的整数。若省略该参数,则使用基数 10。但是要注意,如果该参数是 10 以外的其他值,则 ECMAScript 标准允许实现返回任意值。 2 - 数字以二进制值显示 8 - 数字以八进制值显示 16 - 数字以十六进制值显示 返回值 类型 描述 String 把数字转换为字符串