原文鏈接:https://segmentfault.com/q/1010000022269771
js中可以動態去改變變量名獲取數據嗎
js中可以動態去改變變量名獲取數據嗎
如:
var a1 = [{name1: 1},{name1: 2}]
var a2 = [{name1: 3},{name1: 4}]
var a3 = [{name1: 5},{name1: 6}]
this.fu(3)
fu(num){
this.b= a(num) // 有辦法讓this.b= a3的數據嗎
}
有,但是不推薦,就是用eval
動態獲取變量可以變成別的形式,比如把這些變量掛載在對象上,通過獲取對象的key來獲取到值
比如
var obj = {
a1: 1,
a2: 2,
a3: 3
}
function fn(num) {
return obj['a' + num]
}
這樣是比較安全可靠的