一、逗號運算子的運用
逗號運算子可以用來在一條陳述句中執行多個操作,如下所示:
let a = 10,
b = 20;
function demo() {
return a++, b++, 10;
}
let c = demo();
console.log(c)
console.log(a)
console.log(b)
那他們的列印值分別是對少呢?

這里就不得不提逗號運算子的特性及作用:逗號運算子的作用是將若干運算式連接起來,它的優先級是所有運算子中最低的,結合方向是自左至右,
逗號運算式:
一般形式:運算式1,運算式2,運算式3,…運算式n
求解程序:先計算運算式1的值,再計算運算式2的值,…一直計算到運算式n的值,最后整個運算式的值是運算式n的值,
二、逗號運算子小拓展
逗號運算子還有很多意想不到的操作,例如可以使我們的代碼最大程度的進行簡寫,如下所示:
例如:
let arr = [{ id: 1, value: '正式' }, { id: 2, value: '非正式' }]
當我們的需要將arr的值處理成為{1: ‘正式’, 2: ‘非正式’}的時候
按照我們正常的寫法來說,用reduce方法是最合適不過的,
const newArr= arr.reduce((acc,item)=>{
acc[item.id]=item.value
return acc
},{})
console.log(newArr);
這時我們列印輸出newArr得到的值就是 {1: '正式', 2: '非正式'}
但是如何讓這些代碼一行就能達到效果呢? 這里我們就可以用到逗號運算子了
let newArr= arr.reduce((acc,item)=> (acc[item.id]=item.value, acc),{})
console.log(newArr);
這里我們輸出列印的值也一樣可以得到我們需求的值 {1: '正式', 2: '非正式'}
這種寫法在不開啟eslint的情況下,我們是可以正常使用的
但是開啟了eslint后,這種寫法會讓eslint給你報錯,表示你這種寫法不認識,簡化代碼,不過可讀性差

推薦大家使用正常的寫法,這種寫法了解一下就可以了
逗號運算子的用法還是挺多的,用的好的話可以簡單不少的代碼量
最后,希望這篇文章對大家能有幫助! 不足的地方也請大家指正
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/333813.html
標籤:其他
上一篇:最新系統漏洞--Fortinet FortiGate跨站腳本漏洞
下一篇:VUE版手寫日歷組件
