Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
近看了一些關于JavaScript的測試腳本,覺得JS 中問號的用法還是蠻有意思的,于是做了一下總結,在這里分享給大家!JS中的問號大概有三種用法,分別是:空值合并操作符、可選鏈操作符和三目運算。
空值合并操作符??是一個邏輯操作符,當左側的操作數為 null 或者 undefined 時,返回其右側操作數,否則返回左側操作數。
例如
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是真,則執行exprIfTrue ,否則執行exprIfFalse
舉個例子大家就懂了
var n=10;
console.log((n >=11) ? "a" : "b");
輸出b
當 var n=12;
輸出a
如果您還知道哪些JS 中關于問號的特殊用法歡迎留言討論。如果文章幫到了您,勞煩點贊轉發!
Win7系統桌面圖標有藍色問號怎么解決?
1、打開“計算機”,點擊“組織”選擇“文件夾和搜索選項”;
2、在“文件夾選項”的“查看”選卡中“高級設置”下方框中點擊“顯示隱藏的文件、文件夾和驅動器”,然后將“隱藏受保護的操作系統文件(推薦)”前面的勾去掉,點擊應用并確定即可;
3、切換到桌面,我們可以看到一個名為“.svn”的半透明文件夾,我們將其刪除,然后重啟計算機即可解決。
在我使用對象數組作為函數參數的時候,肯定是會報錯的。
可是,當我使用JSON.stringify()進行轉換為字符串的時候,再從函數體里面使用JSON.parse()方法轉換回來的時候,不知道為什么會報錯。特別我有一點不明白的是,當我把轉換得到的字符串作為參數繼續在函數體內作為另一個函數作為參數的時候,行不通,肯定報錯。
vscode提示我的代碼竟然會拼寫錯誤?!這個比如document他竟然給我補全的是dcoument!!
一開始我根本想不到是拼寫錯誤,怎么一直提示我這個錯誤,最后才發現是這個拼寫錯誤的問題。浪費我好長時間改來改去,也怪自己沒有仔細看報錯。
也是沒看報錯的原因,是我的失誤,后來了解到他有==和===的區別,貌似沒有equals方法。
我說的是不同js文件中的哦。
就是從a.js中調用b.js中的函數b();然后傳入a.js中的對象數組arr,也就是b(arr);
#記錄我的生活#
*請認真填寫需求信息,我們會在24小時內與您取得聯系。