最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

[前端] 操作符、語(yǔ)句、函數(shù)

2020-03-14 16:39 作者:--刃舞--  | 我要投稿

操作符:

大部分與 C 一樣,只寫不一樣的部分。

自增自減:與 C 不同,在 JS 內(nèi)它們可以運(yùn)用于所有數(shù)據(jù)類型:

1、若字符串只有數(shù)字,則進(jìn)行轉(zhuǎn)換并運(yùn)算,字符串變量被轉(zhuǎn)換為數(shù)值類型,若含其它字符,轉(zhuǎn)為 NaN。

2、對(duì)于 Boolean 值,先轉(zhuǎn)為 0 或 1,再進(jìn)行運(yùn)算。

3、對(duì)于對(duì)象,先調(diào)用 valueOf() 獲得返回值再進(jìn)行運(yùn)算,如果返回值是 NaN,再調(diào)用 toString() 然后運(yùn)算。

2. 一元 +、- 運(yùn)算符,+ 的作用和 Number() 一樣,- 的作用是取負(fù)值。

位操作符:基本與 C 相同,右移多了個(gè)有符號(hào)和無(wú)符號(hào)。

布爾操作符:有 !、&&、|| 三個(gè)。


!:除了 對(duì)象、非空字符串、任意非 0 數(shù)值,對(duì)剩下的所有值運(yùn)算結(jié)果都是 true。

&&:運(yùn)算結(jié)果不一定是布爾值。

1、若第一個(gè)操作數(shù)是對(duì)象,則返回第二個(gè)操作數(shù)。

2、若第一個(gè)操作數(shù)求值為 true 且第二個(gè)操作數(shù)是對(duì)象,返回第二個(gè)操作數(shù)。

3、若二者均為對(duì)象,返回第二個(gè)操作數(shù)。

4、若第一個(gè)操作數(shù)是 null、NaN、undefined,返回 null、NaN、undefined。


||:同樣結(jié)果不一定是布爾值。

1、若第一個(gè)操作數(shù)是對(duì)象,返回第一個(gè)操作數(shù)。

2、若第一個(gè)求值為 false,返回第二個(gè)操作數(shù)。

3、二者都是對(duì)象,返回第一個(gè)操作數(shù)。

4、二者都是 null、NaN、undefined,返回 null、NaN、undefined。

關(guān)于 || 有個(gè)用法是:變量 1 = 變量2|| 變量3; 作用是當(dāng)變量 2 的值不可用時(shí),便賦值變量 3。


乘性運(yùn)算符:*、/、%。


*:正常數(shù)值與 C 相同。

1、若二者都是數(shù)值,而一方為無(wú)符號(hào),結(jié)果均為負(fù)數(shù)。

2、若一方是 NaN,結(jié)果 NaN。

3、若一方不是數(shù)值,則調(diào)用 Number() 再運(yùn)算。


/:正常數(shù)值與 C 相同。

1、若二者都是數(shù)值,而一方為無(wú)符號(hào),結(jié)果均為負(fù)數(shù)。

2、若 0 / 0,結(jié)果 NaN。

3、非零數(shù)值除以 0,結(jié)果是正無(wú)窮或負(fù)無(wú)窮。

4、若一方不是數(shù)值,則調(diào)用 Number() 再運(yùn)算。


%:正常數(shù)值與 C 相同。

1、任何數(shù)取模無(wú)窮大是本身。

2、無(wú)窮大取模有限數(shù),有限數(shù)取模 0,結(jié)果 NaN。

3、0 取模任何數(shù)為 0。

4、若一方不是數(shù)值,則調(diào)用 Number() 再運(yùn)算。


加性運(yùn)算符:+、-。

+:當(dāng)一方不是數(shù)值時(shí),將其轉(zhuǎn)換為字符串,然后進(jìn)行字符串拼接。

關(guān)系運(yùn)算符:>、<、==、!=。===、!==


大于小于:

1、二者都是字符串,依次比較對(duì)應(yīng)位的字符編碼。

2、一方為數(shù)值,則將另一方轉(zhuǎn)換為數(shù)值進(jìn)行比較。


==、!=、:

1、一方是數(shù)值,則轉(zhuǎn)換另一方為數(shù)值。

2、null == undefined

3、只要有 NaN,== 結(jié)果為 false,!= 結(jié)果為 true。

4、二者都是對(duì)象,則判斷是否是同一對(duì)象,是則 true,否則 false。


===、!==:這兩個(gè)不僅比較值,還比較類型,只要類型不同依然 false。

賦值操作符:與 C 相同。

delete 操作符:刪除對(duì)象的屬性,格式:delete 對(duì)象名['屬性名']。

instanceof:專門用來(lái)檢測(cè)對(duì)象類型,格式:實(shí)例名 instanceof 對(duì)象名,即該實(shí)例是否是該對(duì)象的實(shí)例,返回布爾值。

in:用來(lái)判斷通過(guò)某對(duì)象、實(shí)例是否能訪問(wèn)到某屬性,格式:"屬性名" in 對(duì)象或?qū)嵗?,是則返回 true。


語(yǔ)句:

if、do-while、while、for 都與 C 相同。

for-in:for(let 變量名 in 實(shí)例名){ 循環(huán)體 },迭代語(yǔ)句,用來(lái)枚舉操作對(duì)象的屬性,但當(dāng)遇到屬性為 null 或 undefined 時(shí)便停止執(zhí)行,不報(bào)錯(cuò),枚舉時(shí),每次將實(shí)例的一個(gè)屬性名賦值到括號(hào)內(nèi)聲明的變量中,在循環(huán)體中進(jìn)行操作,即括號(hào)內(nèi)聲明的那個(gè)變量存儲(chǔ)的是字符串,可以通過(guò)這個(gè)字符串操作對(duì)象的每個(gè)屬性。

label 語(yǔ)句:類似 C 的 goto 一樣不建議使用,用來(lái)配合循環(huán)跳出語(yǔ)句一次性跳出多重循環(huán)。

with 語(yǔ)句:用來(lái)簡(jiǎn)化對(duì)象的賦值操作,嚴(yán)格模式不允許使用,例子如下:

????let a,b,c;

????with(某對(duì)象名)

????{

????????a = 屬性名;

????????b = 屬性名;

????????c = 屬性名;

????}

switch 語(yǔ)句:用法與 C 相同,但 case 被擴(kuò)展到可使用所有數(shù)據(jù)類型,甚至支持變量、表達(dá)式,非常自由。

函數(shù):

JS 的函數(shù)很寬松,形參與實(shí)參并沒(méi)有個(gè)數(shù)聯(lián)系,你可以一個(gè)形參都不設(shè)卻傳入很多實(shí)參,函數(shù)執(zhí)行前,實(shí)參會(huì)被復(fù)制到一個(gè)類數(shù)組對(duì)象 arguments 中,但注意是復(fù)制不是引用,參數(shù)與 arguments 在內(nèi)存的位置不是共用的,它們是分開獨(dú)立存儲(chǔ)的,只是值相同。在嚴(yán)格模式下,不能使用 arguments。


[前端] 操作符、語(yǔ)句、函數(shù)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
江川县| 商水县| 洛隆县| 永善县| 英德市| 五莲县| 宁国市| 乌兰浩特市| 河津市| 甘谷县| 广宗县| 五莲县| 普陀区| 五华县| 西乡县| 永州市| 邢台市| 金华市| 万盛区| 运城市| 准格尔旗| 曲周县| 海原县| 江源县| 万安县| 镇宁| 五原县| 华坪县| 锡林郭勒盟| 苏尼特右旗| 东山县| 桑植县| 顺昌县| 信丰县| 岐山县| 腾冲县| 临清市| 望都县| 新竹县| 临沧市| 德令哈市|