假值
以下值在 JavaScript 中被當(dāng)作假值, 在邏輯運(yùn)算中能被轉(zhuǎn)換成false
null
NaN
0
""空字符串
undefined
邏輯運(yùn)算符
&& 邏輯與
|| 邏輯或
!邏輯非
常見(jiàn)技巧
var? color=localStorage.getItem('color') || '#333';? ? //默認(rèn)字體顏色: #333? 獲取默認(rèn)的字體顏色,如果沒(méi)有,則顏色換成 #333;
color && (document.body.style.color='#333') ; ?//
? ? ? ? ? ? ? ? ? ? ? ? 字符串
JavaScript 通過(guò)字符串存儲(chǔ)文本。字符串的內(nèi)部格式是UTF-16,與文檔格式無(wú)關(guān)。
indexOf 方法
語(yǔ)法
str.indexOf(searchValue[,fromIndex])
fromIndex
表示調(diào)用該方法的字符串中開(kāi)始查找的位置??梢允侨我庹麛?shù)。默認(rèn)值為 0。如果fromIndex < 0則查找整個(gè)字符串(如同傳進(jìn)了 0)。如果fromIndex >= str.length,則該方法返回 -1,除非被查找的字符串是一個(gè)空字符串,此時(shí)返回 str.length。
indexOf()方法返回調(diào)用String對(duì)象中第一次出現(xiàn)的指定值的索引,開(kāi)始在 fromIndex進(jìn)行搜索。
如果未找到該值,則返回-1。
》 ?"亞索的追隨者們盡情享受你們的統(tǒng)治吧。至于我銳雯的支持者們我們知道這個(gè)世界實(shí)際應(yīng)當(dāng)是怎樣重生的。以下是我們?yōu)槔杳魇拐邉倮鶞?zhǔn)備的另一個(gè)結(jié)局。".indexOf('黎明')
> ?53
》"亞索的追隨者們盡情享受你們的統(tǒng)治吧。至于我銳雯的支持者們我們知道這個(gè)世界實(shí)際應(yīng)當(dāng)是怎樣重生的。以下是我們?yōu)槔杳魇拐邉倮鶞?zhǔn)備的另一個(gè)結(jié)局。".indexOf('沒(méi)有')
> ? -1
//location.href ?即當(dāng)前網(wǎng)頁(yè)
if(location.href.indexOf('taobao.com') !== -1){
alert('請(qǐng)不要在上班時(shí)間看淘寶');
}
String.prototype.replace()
replace() 方法用來(lái)替換字符串的字符
》"相信我:如果我們夠機(jī)靈的話,皮爾特沃夫就能強(qiáng)勢(shì)地面對(duì)任何威脅。我就是個(gè)活生生的例子。——杰斯".replace('杰斯','亞索')
> "相信我:如果我們夠機(jī)靈的話,皮爾特沃夫就能強(qiáng)勢(shì)地面對(duì)任何威脅。我就是個(gè)活生生的例子?!獊喫?
重復(fù)
repeat() ? ?ES6構(gòu)造并返回一個(gè)新字符串,該字符串是原字符串重復(fù)若干次的結(jié)果。
》 "切克鬧".repeat(3)
>? "切克鬧切克鬧切克鬧"
模板字符串反引號(hào)``
ES6
字符串還可以用一對(duì)反引號(hào) ``括起來(lái)。
`老師說(shuō),JavaScript 字符串用單引號(hào) ' 或者雙引號(hào) " 括住都行,那我應(yīng)該用單引號(hào)還是雙引號(hào)呢?`
反引號(hào)``可以通過(guò)${}內(nèi)嵌任意表達(dá)式。
>`7 x 8 =${7*8}`
→"7 x 8 = 56"
字符串的長(zhǎng)度
可以通過(guò)字符串的length屬性來(lái)獲得字符串長(zhǎng)度
》"你是不是德國(guó)人呢?".length
>9
獲取特定字符串
獲取特定字符串可以通過(guò) ?[] 和 charAt() 來(lái)獲取字符串中的某個(gè)字符,
》注意,字符串第一個(gè)字符的下標(biāo)是從 ?0 ?開(kāi)始, 最后一個(gè)下標(biāo)是length-1,
>'你好,請(qǐng)問(wèn)巽寮灣要去哪里坐車(chē)去?大概需要多久'[6]
》寮
》'你好,請(qǐng)問(wèn)巽寮灣要去哪里坐車(chē)去?大概需要多久' .charAt(6)
>寮
對(duì)于比較長(zhǎng)的字符串 ,用length-1來(lái)獲取最后一個(gè)字符, 這時(shí)需要聲明一個(gè)變量
var xlw = '你好,請(qǐng)問(wèn)巽寮灣要去哪里坐車(chē)去?大概需要多久,有沒(méi)有聲明最快的到達(dá)的辦法'
》xlw[xlw.length-1]
>法
字符串不可變
javascript 中的字符串一旦聲明就不可改變。
除非重新賦值
》var Abcd = 'Abcd'
》Abcd[0] = 'a'
>"a"
》Abcd
>"Abcd"
字符串轉(zhuǎn)成數(shù)字 Number()
》var? character = '2017'
>undefined
》Number(character)
>2017
數(shù)字轉(zhuǎn)成字符串 ?toString()
》var ?width= '2000'
>undefined
》width.toString()
>2000
練習(xí)題
練習(xí)題