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

JavaScript018

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

对象[变量]

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

var

x

=

"name"

var

n

=

obj[x]

//获取属性值

obj[x]

=

"XXX"

//设置属性值

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

obj.name

obj["name"]

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

主要有三种方式,for...in 、Object.keys(obj)、Object.getOwnPropertyNames(obj):

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>遍历对象的几种方式</title>

</head>

<body>

</body>

<script>

const obj = {

a:1,

b:true,

c:"hello"

}

//方式1:for in方式  

for(let key  in obj){

        console.log(key)

   }

//Object.keys 方式 直接返回一个数组

console.log(Object.keys(obj))

console.log(Object.getOwnPropertyNames(obj))

</script>

</html>

如果想要了解他们具体的区别的话,可以看下这篇博客JS中三种主要的遍历对象的方法:for in、Object.

1.这种方法的属性(setAttrName)可以是一个变量。

var obj = {}

obj[setAttrName] = 'Tom'

2.这样就可以动态的给js对象添加变量属性。

var obj = {

attr: {

}

}

var egData = ['oneAttr', 'twoAttr', 'threeAttr']

for (var i = 0 i < egData.length i++) {

obj.attr[egData[i]] = false

}

资料拓展:

创建 JavaScript 对象

通过 JavaScript,您能够定义并创建自己的对象。

创建新对象有两种不同的方法:

1.定义并创建对象的实例

2.使用函数来定义对象,然后创建新的对象实例