10個(gè)JS簡(jiǎn)寫小技巧,讓你的代碼更漂亮
JS代碼簡(jiǎn)寫技巧可以使代碼更加簡(jiǎn)潔易讀,提高開(kāi)發(fā)效率和代碼運(yùn)行速度,降低出錯(cuò)率,更易于維護(hù)。同時(shí),它可以減少代碼量,提高可讀性,是一種實(shí)用的編程技巧,適用于大型項(xiàng)目。
Ternary Operator(三元運(yùn)算符)
//?傳統(tǒng)寫法if?(condition)?{ ??value?=?x;}?else?{ ??value?=?y;}//?簡(jiǎn)寫value?=?condition???x?:?y;
Short-circuit Evaluation(短路運(yùn)算)
//?傳統(tǒng)寫法if?(variable?!==?null?||?variable?!==?undefined?||?variable?!==?'')?{ ??doSomething();}//?簡(jiǎn)寫if?(variable)?{ ??doSomething();}
Spread Operator(展開(kāi)運(yùn)算符)
//?傳統(tǒng)寫法var?arr1?=?[1,?2,?3];var?arr2?=?[4,?5,?6];var?arr3?=?arr1.concat(arr2);//?簡(jiǎn)寫var?arr3?=?[...arr1,?...arr2];
Destructuring(解構(gòu))
//?傳統(tǒng)寫法var?first?=?arr[0];var?second?=?arr[1];//?簡(jiǎn)寫var?[first,?second]?=?arr;
Default Parameters(默認(rèn)參數(shù))
//?傳統(tǒng)寫法function?doSomething(param)?{ ??var?param?=?param?||?'default';}//?簡(jiǎn)寫function?doSomething(param?=?'default')?{ ??//?...}
Object Shorthand(對(duì)象簡(jiǎn)寫)
//?傳統(tǒng)寫法var?x?=?1;var?y?=?2;var?obj?=?{?x:?x,?y:?y?};//?簡(jiǎn)寫var?x?=?1;var?y?=?2;var?obj?=?{?x,?y?};
Arrow Functions(箭頭函數(shù))
//?傳統(tǒng)寫法function?add(x,?y)?{ ??return?x?+?y;}//?簡(jiǎn)寫var?add?=?(x,?y)?=>?x?+?y;
Template Literals(模板字面量)
//?傳統(tǒng)寫法var?name?=?'Tom';var?greeting?=?'Hello,?'?+?name?+?'!';//?簡(jiǎn)寫var?name?=?'Tom';var?greeting?=?`Hello,?${name}!`;
Array.reduce()(數(shù)組reduce方法)
//?傳統(tǒng)寫法var?arr?=?[1,?2,?3,?4,?5];var?sum?=?0;for?(var?i?=?0;?i?<?arr.length;?i++)?{ ??sum?+=?arr[i];}//?簡(jiǎn)寫var?arr?=?[1,?2,?3,?4,?5];var?sum?=?arr.reduce((acc,?cur)?=>?acc?+?cur,?0);
Object.assign()(對(duì)象assign方法)
//?傳統(tǒng)寫法var?obj1?=?{?x:?1,?y:?2?};var?obj2?=?{?z:?3?};var?obj3?=?Object.assign({},?obj1,?obj2);//?簡(jiǎn)寫var?obj1?=?{?x:?1,?y:?2?};var?obj2?=?{?z:?3?};var?obj3?=?{?...obj1,?...obj2?};
以上是10個(gè)JS簡(jiǎn)寫小技巧,可以讓代碼更加簡(jiǎn)潔和易讀。
結(jié)語(yǔ)
牽手 持續(xù)為你分享各類知識(shí)和軟件 ,歡迎訪問(wèn)、關(guān)注、討論 并留下你的小心心?
標(biāo)簽:js