1. 使用 + 字符能夠轉換成數字 好比要把一個字符串數字轉換成數字,你可能會這樣作: var one = ‘1’; var two = ‘2’; var numberOne = Number(one); //1 var numberTwo = parseInt(two); //2 我要說的這個小技巧是在John Papa那裏學到的,經過 + 字符,直接實現了對變量的 數字轉換。 這種方式灰常簡單,但前提得是一個數字的字符串,不然就會獲得NaN值。 例以下面的代碼: function convertNumber(str){ return +str; } convertNumber(‘1234’); //1234 convertNumber(‘abc’); //NaN var one = ‘1’; var numberOne = +one; //1 這種寫法比較簡單,想說爲何這樣寫,由於比較酷~ 2 清空數組 有時候清空Array你可能會這樣作 var list = [1, 2, 3, 4]; list = [ ]; 但另外一個方法可能會更加的高效一些: 你能夠這樣寫: var list = [1,2,3,4]; list.length = 0; 這樣作是由於: list = [ ] ,會將一個新數組的引用分配給變量,而其餘任何引用都不受影響。這意味着對前一個數組的內容的引用仍然保留在內存中,致使內存泄漏。 list.length = 0, 則直接就刪除了Array中的內容 3 合併數組 在實際操做中,常常要實現數組的合併,尤爲是有時候Component化後,會須要定義許多的Module啊,Component等等,好比Angular, 可能因爲項目比較大,而讓不一樣的app聲明瞭不一樣的數組。那此時能夠這樣作,使用Array.concat() 或者 [ ].concat() 好比 ComponentModule= [‘call-back’,’router’,’nav’] PageModule = [‘home’,’payment’] AppModule = [ ]. concat(ComponentModule,PageModule) 而後這個函數並不適合用來合併兩個大型的數組,由於其將消耗大量的內存來存儲新建立的數組。在這種狀況之個,可使用Array.pus().apply(arr1,arr2)來替代建立一個新數組。這種方法不是用來建立一個新的數組,其只是將第一個第二個數組合並在一塊兒,同時減小內存的使用: var array1 = [1,2,3]; var array2 = [4,5,6]; console.log(array1.push.apply(array1, array2)); // [1,2,3,4,5,6]; 4 把Arguments轉換成數組 這用到了ES6的特性,把Arguments的數值spread出去 function toArray(…args){ console.log(args); } toArray(1,2,3); //[1,2,3] 5 複製數組 一樣也使用了ES6的特性 var arr=[1,2,3]; //var arr2=Array.from(arr); var arr2=[...arr]; arr.pop(); console.log(arr); //[1,2] console.log(arr2); //[1,2,3] 6 數字轉字符串 假設有不肯定的變數類型,須要轉換成字符串,若是直接使用可能會有錯誤 var one = 1; var two = 2; var three = '3'; var result = one + two + three; // 會獲得 "33" 而非 "123" 可使用 concat 來連接字符串,而避免了錯誤 var one = 1; var two = 2; var three = '3'; var result = ''.concat(one, two, three); // 獲得 "123" 7在Array中找到最大值和最小值 有時候,程序員就是有尿性,非要找到最大值和最小值,內建函數有 Math.max() 和 Math.min() 能夠找到最大和最小值 Math.max(1, 2, 3, 4); // 4 Math.min(1, 2, 3, 4); // 1 若是要在Array中找最大最小值能夠這樣用 var numbers = [1, 2, 3, 4]; Math.max.apply(null, numbers) // 4 Math.min.apply(null, numbers) // 1 經過ES6 的Spread來完成 var numbers = [1, 2, 3, 4]; Math.max(...numbers) // 4 Math.min(...numbers) // 1 8 設置默認值 也許這個小技巧,許多小夥伴在學javascript一段時間就都已經掌握了了。 若是你想必須給一個變量賦默認值,能夠這樣簡單寫 var a; console.log(a) // undefined a = a || ‘default value’ console.log(a) // default value a = a || ‘new value’ console.log(a) // default value