JavaScript奇怪又好用的手势1.解构技巧通常我们需要在嵌套的多层对象中使用一些属性,会使用letobj={part1:{name:'zeroone',age:23}}//deconstructconst{part1:{name,age}}=obj//使用console.log(name,age)//0123这种情况下,你从part1中解构name和age之后,就不能再使用变量obj中的part1属性,如://....省略const{part1:{name,age}}=objconsole.log(part1)//UncaughtReferenceError:part1isnotdefined其实可以多次解构,比如://。...省略const{part1:{name,age},part1}=objconsole.log(part1)//{name:"zeroone",age:23}二、数字分隔符有时你会在文件中定义一个数值常数constmyMoney=1000000000000这么多0,1,2...6,7...数晕了,怎么办?数字分隔符被四舍五入!constmyMoney=1_000_000_000_000console.log(myMoney)//1000000000000没问题,数字分开后更直观!!3.try...catch...最后谁好?在普通的函数调用中,return一般会提前结束函数的执行functiondemo(){return1console.log('我是零一')return2}console.log(demo())//1而在try...catch..在.finally中return不会结束执行回来??这个程序返回什么?想想TowhoursLater~答案是:3最后得出结论比较厉害,然后我们可以做一些炫耀的操作functiondemo(){try{return1}catch(err){console.log(err)return2}finally{try{return3}finally{return4}}}console.log(demo())//返回44.获取当前调用栈}functionthridFunction(){console.log(newError().stack);}firstFunction();//=>Error//atthridFunction(
