1、解构小技巧

平时咱们须要用到一个嵌套多层的对象中某些属性,会将其解构进去应用

let obj = {  part1: {    name: '零一',    age: 23  }}// 解构const { part1: { name, age } } = obj// 应用console.log(name, age)  // 零一  23

这种状况下,你把 name 和 age 从 part1 里解构进去了当前,你就无奈应用变量 obj 中的 part1 属性了,如:

// .... 省略const { part1: { name, age } } = objconsole.log(part1)   // Uncaught ReferenceError: part1 is not defined其实你能够屡次解构,如:// .... 省略const { part1: { name, age }, part1 } = objconsole.log(part1)   // {name: "零一", age: 23}

2、一行代码生成随机字符串

const str = Math.random().toString(36).substr(2, 10);console.log(str);   // 'w5jetivt7e'

先是 Math.random() 生成 [0, 1) 的数,也就是 0.123312、0.982931之类的,而后调用 number 的 toString办法将其转换成36进制的,依照MDN的说法,36进制的转换应该是蕴含了字母 a~z 和 数字0~9的,因为这样生成的是 0.89kjna21sa 相似这样的,所以要截取一下小数局部,即从索引 2 开始截取10个字符就是咱们想要的随机字符串了