近看了一些關(guān)于JavaScript的測試腳本,覺得JS 中問號的用法還是蠻有意思的,于是做了一下總結(jié),在這里分享給大家!JS中的問號大概有三種用法,分別是:空值合并操作符、可選鏈操作符和三目運算。
空值合并操作符??是一個邏輯操作符,當左側(cè)的操作數(shù)為 null 或者 undefined 時,返回其右側(cè)操作數(shù),否則返回左側(cè)操作數(shù)。
例如
console.log(null ?? "xx")
輸出 xx
console.log(1 ?? "xx")
輸出 1
可選鏈操作符(?.)可選鏈操作符允許讀取位于連接對象鏈深處的屬性的值,而不必明確驗證鏈中的每個引用是否有效。 使用它的好處是引用為null 或者 undefined的情況下不會引起錯誤。
語法:obj?.prop obj?.[expr] arr?.[index] func?.(args)
例如
var obj={a:{b:1}}
console.log(obj?.a?.b)
輸出1
console.log(obj?.a?.c)
輸出 undefined
這是三目運算,具體表達式是(condition ? exprIfTrue : exprIfFalse)
該表達式的含義是 條件condition是真,則執(zhí)行exprIfTrue ,否則執(zhí)行exprIfFalse
舉個例子大家就懂了
var n=10;
console.log((n >=11) ? "a" : "b");
輸出b
當 var n=12;
輸出a
如果您還知道哪些JS 中關(guān)于問號的特殊用法歡迎留言討論。如果文章幫到了您,勞煩點贊轉(zhuǎn)發(fā)!
Win7系統(tǒng)桌面圖標有藍色問號怎么解決?
1、打開“計算機”,點擊“組織”選擇“文件夾和搜索選項”;
2、在“文件夾選項”的“查看”選卡中“高級設置”下方框中點擊“顯示隱藏的文件、文件夾和驅(qū)動器”,然后將“隱藏受保護的操作系統(tǒng)文件(推薦)”前面的勾去掉,點擊應用并確定即可;
3、切換到桌面,我們可以看到一個名為“.svn”的半透明文件夾,我們將其刪除,然后重啟計算機即可解決。
在我使用對象數(shù)組作為函數(shù)參數(shù)的時候,肯定是會報錯的。
可是,當我使用JSON.stringify()進行轉(zhuǎn)換為字符串的時候,再從函數(shù)體里面使用JSON.parse()方法轉(zhuǎn)換回來的時候,不知道為什么會報錯。特別我有一點不明白的是,當我把轉(zhuǎn)換得到的字符串作為參數(shù)繼續(xù)在函數(shù)體內(nèi)作為另一個函數(shù)作為參數(shù)的時候,行不通,肯定報錯。
vscode提示我的代碼竟然會拼寫錯誤?!這個比如document他竟然給我補全的是dcoument!!
一開始我根本想不到是拼寫錯誤,怎么一直提示我這個錯誤,最后才發(fā)現(xiàn)是這個拼寫錯誤的問題。浪費我好長時間改來改去,也怪自己沒有仔細看報錯。
也是沒看報錯的原因,是我的失誤,后來了解到他有==和===的區(qū)別,貌似沒有equals方法。
我說的是不同js文件中的哦。
就是從a.js中調(diào)用b.js中的函數(shù)b();然后傳入a.js中的對象數(shù)組arr,也就是b(arr);
#記錄我的生活#
*請認真填寫需求信息,我們會在24小時內(nèi)與您取得聯(lián)系。