鍍金池/ 問(wèn)答/HTML/ js變量用不同的取值方法,結(jié)果不一樣

js變量用不同的取值方法,結(jié)果不一樣

data是個(gè)數(shù)組,data[2]可以取到值,但是用data[index]取不到值(index=2)

   var data = that.data.data.deviceList  
    var index = e.target.dataset.index

    console.log('data is:',data,'\nindex is:',index,'\ndata[2] is:',data[2],'\ndata[index] is: ',data[index])

圖片描述

謝謝!

回答
編輯回答
故人嘆

你這個(gè)index可能是帶有空格的字符串,把index轉(zhuǎn)一下number試試:Number(e.target.dataset.index)

2018年7月15日 23:07
編輯回答
九年囚

比 console.log 更正確的調(diào)試方式是加斷點(diǎn),chrome 還能把 console 自動(dòng)切入斷點(diǎn)停止處的上下文,一下就能看出代碼里的貓膩。

個(gè)人猜想,index 后面有空格,用 console.log 肉眼無(wú)法辨識(shí), 導(dǎo)致 key 不對(duì)。硬要用 console.log 我會(huì)這樣來(lái)打印變量:

console.log("index is: [" + index + "]");
2018年8月16日 20:22