在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML/ Node.js中map的坑

Node.js中map的坑

const deviceLogMap = new Map([
  [0,'測試'],[1,'設(shè)防'][3,'測試2']]);

上面的map中

[1,'設(shè)防'][3,'測試2']

之間缺少,號,但是在運行時沒有錯誤信息,無法捕捉到相關(guān)的錯誤信息。
求解答

回答
編輯回答
厭遇

clipboard.png

敢問你的nodejs是什么版本的。。。

2018年1月10日 18:22
編輯回答
擱淺

少了逗號就把[3,'測試2']當(dāng)作數(shù)組索引了吧。

let a = [1,'設(shè)防'];
const deviceLogMap = new Map([
  [0,'測試'],a[3,'測試2']]);

————————更新
= =測試了一下我的是報錯的。

2017年4月30日 18:28
編輯回答
涼薄

這不能算作bug。
[1,'設(shè)防'][3,'測試2']這樣的語法本身就是成立的。
等價于

    const arr = [1,'設(shè)防']
    console.log(arr['測試2'])
//    => undefined

沒毛病 :)

=======
測試了一下我node也是報錯的 emmm...

2017年8月7日 00:24
編輯回答
朕略萌

這都被你發(fā)現(xiàn)了,V8的bug。
new Map(wrong_iterable) swallow TypeError in file scripts
https://chromium-review.googl...

補充說明

這個bugMapnew Map([iterable]),但是不可迭代的參數(shù)沒有拋出錯誤給調(diào)試器,你會發(fā)現(xiàn)后續(xù)的代碼是不能執(zhí)行的,這取決于nodejs版本所使用的V8。

2017年2月2日 14:30