var a = "3";
console.log(a * 1); // 3
console.log(+a); // 3 這個方法最長用
console.log(a.valueof()); // 3
有的時候後台來的字串,你在前端函式swich已經寫好了,都是數字。。。尷尬了。。這個時候只要這樣就解決了
switch (+data.value)
boolean(x) // 就這麼用,會返回true或者false
實現某功能:挑出陣列中的所有真值
// 下邊功能實現是跳出陣列裡所有true值
function compact(arr)
var num = [0, 1, false, 2, "", "a", "n"];
console.log(compact(num))
// boolean 是乙個函式 boolean(1)會返回true,boolean(「」)會返回false
// 在filter裡會自己傳參.
// 上方filter函式是簡寫的,不簡寫是這個樣子的
function compact(arr) )
}
看一下下邊這段**,會有一種豁然開朗的感覺
typeof config.btn === 'string' && (config.btn = [config.btn]);
前邊是乙個檢測型別,沒有if也不判斷。後邊就是個執行語句;
關鍵點就在於這個&&
&&為取假運算,從左到右依次判斷,如果遇到乙個假值,就返回假值,以後不再執行,否則返回最後乙個真值
||為取真運算,從左到右依次判斷,如果遇到乙個真值,就返回真值,以後不再執行,否則返回最後乙個假值
再回到**上,就是當前邊的檢測型別函式為真時,就會繼續執行。也就是config.btn如果是個字串就執行後邊這個,把config.btn變成陣列,不過不是字串的話後邊的就不執行了。**的意思就很明顯了,不管你傳來了字串還是陣列最後都變陣列,我後邊好做處理,就不用if else去判斷了,可以說非常高效了。
另乙個應用就是預設引數,和防止引數不傳;應用某變數又擔心他沒被賦值。
譬如:
function sendclass (val)
// 防止undefined
var data=people || ;
// 利用 | 0 取整
var dd = -3.52;
console.log(dd | 0)
// 判斷奇數偶數
var numa = 8;
console.log(!!(numa & 1))
// 強制引數 ;否則就丟擲錯誤
var man = () =>
var too = (bar = man()) =>
too("aaaa") //有引數不報錯
too()//報錯
// es6裡的可以在函式引數賦值預設引數,這次是賦值函式執行,
// 也可以看出這個函式的執行過程,先看看有沒有引數,沒有再去找預設設定了什麼,就是利用這個原理
遇到這樣的需求,需要頻繁執行某個函式,函式裡有很多的swich或者if elseif,執行一次後,就會每次都走一條線而且多次走某個分支,這時候用這個方法
/*
在某個場景下我們的函式中有判斷語句,這個判斷依據在整個專案執行期間一般不會變化,
所以判斷分支在整個專案執行期間只會執行某個特定分支,那麼就可以考慮惰性載入函式
*/// 利用執行一次函式後,就改寫這個函式,下次來的時候就不用判斷了,就直接執行,節約了資源
function todo ()else
}// 改寫成這個樣子 ,要的是這個程式設計思路,同樣的思路也可以做執行一次的函式.也就是說執行一次就改寫它
function todo ()
}else
}
要的是這個程式設計思路,同樣的思路也可以做執行一次的函式.也就是說執行一次就改寫它
平常看到的是這樣子的
switch (value)
大家都知道乙個物件要取出來可以obj.sth或者obj[sth],現在就利用後一種寫法
var obj=
obj[value]();
如果是取值那就直接obj[value]就更簡單了,熟練了非常好用
今天就到這裡,有不對的地方希望有人幫忙指正
javascript寫cookie的一些方法
函式 一 寫cookie的函式,將cookie寫入客戶端,通用函式,傳入3個引數即可 cookie名字,值和失效期 函式 寫入cookie function writecookie cookiename,cookievalue,expiry else 沒有設定cookie失效時間 函式 二 取得表單...
javascript的一些常用演算法
1 判斷乙個單詞是否是回文?回文是指把相同的詞彙或句子,在下文中調換位置或顛倒過來,產生首尾回環的情趣,叫做回文,也叫回環。其實重要的考察的就是對於reverse的實現。其實我們可以利用現成的函式,將字串轉換成陣列,這個思路很重要,我們可以擁有更多的自由度去進行字串的一些操作。function ch...
JavaScript共用的一些函式
新元素 你想插入的元素 newelement 目標元素 你想把這個元素插入到哪個元素 targetelement 父元素 目標元素的父元素 parentelement parentelement.insertbefore newelement,targetelement function inser...