曾經我一度在尋找JS的替代語言,嘗試過CoffeeScript
/TypeScript
/Dart
(都是淺嘗)。不爲何緣由,而是當你寫的越多的JS,越以爲JS不少時候顯得很操蛋。好在ES2015
和Babel
出來了,也讓我終止了尋找替代方案,安心的停留在了JavaScript
自己。javascript
我並無很是豐厚的多語言編程經驗,但也有一絲想法,對於JavaScript
來講。java
Array
增長first
和last
方法let arr = [1, 2, 3]; arr.first(); //1 arr.last(); //3
固然用arr[0]
和arr[arr.length-1]
也可以實現相同的效果,不過方案顯得不夠優雅編程
[n...m]
快速生成從n
到m
的數字數組(可用於簡潔的循環)let arr = [0...9]; //等同於 let arr2 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]; [0...9].map(n => console.log(n));
Object.isSet
,這樣就沒必要去作嵌套式的判斷語句了,也不用擔憂拋出異常let a = {}; if (Object.isSet(a.b.c.d)) { //如今a.b.c.d可以安全的調用 } //如今只能這樣判斷.d可否被安全調用 if (a && a.b && a.b.c && a.b.c.d) { //如今a.b.c.d可以被安全的調用 }
Date
對象的toString
方法提供輸出指定格式的日期時間字符串let d = new Date(); d.toString('yyyy-MM-dd'); //2016-01-01 //hh 12小時制 HH 24小時制 d.toString('hh:mm:ss'); //09:21:12 d.toString('HH:mm:ss'); //21:21:12
Date
對象提供對年、月、日、分、秒的增減方法let d = new Date(); //2016-01-01 09:20:20 d.years(1); //2017-01-01 09:20:20 d.years(-1); //2015-01-01 09:20:20 d.months(1); //2016-02-01 09:20:20 d.months(-1); //2015-12-01 09:20:20 d.days(1); //2016-01-02 09:20:20 d.days(-1); //2015-12-31 09:20:20 d.minutes(1); //2016-01-01 09:21:20 d.minutes(-1); //2016-01-01 09:19:20 d.seconds(1); //2016-01-01 09:20:21 d.seconds(-1); //2016-01-01 09:20:19