js基礎進階--編碼實用技巧(一)

個人我的博客:http://www.xiaolongwu.cnjava

前言

在平時的開發中,編碼技巧很重要,會讓你少寫不少代碼,起到事倍功半的效果。git

下面總結幾種簡單的技巧,你們共同窗習一下github

一、 利用+、-、/1,*1將字符串轉換爲整數型

這個方法試用於將字符串類型的數字轉換爲整數型,若是帶字母就會返回NaN。數組

var a = "1234", b = "leonWuv";
//咱們想把a轉換爲1234的整數型,通常方法
console.log(typeof Number(a))  //number
//簡單寫法
console.log(+a + 1,typeof +a);  //1235 number
console.log(a - 0 + 1,typeof (a-0)); //1235 number
console.log(a*1 + 1,typeof (a*1));  //1235 number
console.log(a/1 + 1,typeof (a/1));  //1235 number
console.log(b/1 + 1,typeof (b/1));  //NaN number

這個也是用於 Date();它將返回時間戳緩存

//如下方法都返回時間戳
console.log(+ new Date()); //1512378253218  2017年12月04日17時左右;
console.log(Date.parse(new Date())); //1512378253000  注意後三位向下取整爲000;
console.log(new Date("2017/1/1").getTime()); ////1483200000000

二、利用!!強制轉換布爾值

咱們須要驗證一個變量是否存在或者有效時,可使用!!來簡單快速的判斷學習

這個技巧我在 javaScript數據類型你都弄明白了嗎?絕對乾貨這篇博文中的第四部分提到過編碼

總結一下就是:只要變量的值爲:0、null、" "、undefined或者NaN都將返回的是false,反之返回的是true。看下面例子.net

var a = 0,b = "12";
console.log(!!c); //false
// 分解上面的代碼--Boolean(c)得false,取非爲true,再取非爲false。
console.log(!!d)  //true
// 分解上面的代碼--Boolean(d)true,取非爲false,再取非爲true

三、在遍歷數組時,緩存數組的length

在處理一個數組循環時,咱們好多人一般會這麼寫code

for(var i = 0; i < array.length; i++) {
    console.log(array[i]);
}

當咱們遍歷一個小型數組時,這樣寫是能夠的,可是當咱們處理一個大型數組時,這樣寫就會每次循環都計算數組的長度,會有延誤,這時咱們能夠這樣寫blog

var length = array.length;
for(var i = 0; i < length; i++) {
    console.log(array[i]);
}

固然咱們也能夠這樣寫,這兩種方式都是能夠的

for(var i = 0, length = array.length; i < length; i++) {
    console.log(array[i]);
}

四、合理利用&&運算符

看看這段代碼

if(a){
    console.log("hello leonWu");
    //解釋一下這段代碼,若是Boolean(a)爲true,就打印出hello leonWu
}

咱們稍微修改一下上面的代碼

a && console.log("hello leonWu"); //結果是同樣的,可是這樣是否是簡單清晰多了,代碼量也少了

相關連接:js基礎進階--編碼的實用技巧(二).md)

github資源地址:js基礎進階--編碼實用技巧(一).md)

csdn博客地址:https://blog.csdn.net/wxl1555

若是您對個人博客內容有疑惑或質疑的地方,請在下方評論區留言,或郵件給我,共同窗習進步。

郵箱:wuxiaolong802@163.com

相關文章
相關標籤/搜索