js 一个对象的属性名是一个变量如何设置和获取值

JavaScript035

js 一个对象的属性名是一个变量如何设置和获取值,第1张

对象[变量]

比如obj是一个对象,它有个属性是name:

var x = "name"

var n = obj[x] //获取属性值

obj[x] = "XXX" //设置属性值

补充说明:对象属性的使用有两种方式:

obj.name

obj["name"]

第二种方式的属性名是个字符串,这就为变量的使用制造了可能性。

可以使用闭包的方法:

function aa() {

var a = 'hello'

return function(){

return a

}

}

然后在外面接收:

var fn=aa()//返回一个匿名函数

var a=fn()//获取到匿名函数中的返回值

根据作用域链的原理内部的函数可以访问到外部函数的变量,然后将获取的变量返回即可。