JavaScript给对象赋值的两种⽅式
在JavaScript的基础语法中,我们必定会⽤到Object这种数据类型,给这种数据类型的属性赋值的⽅式有两种.......
. 赋值的⽅式
var obj = {
name: 'TOM',
age: 18
}
obj.name = "Jack"
这应该是⼤家最常⽤的⼀种⽅式了,但是这种⽅式在有些特殊时候并不能够使⽤,⽐如说从后台传来⼀个response对象,对象的头部会有⼀个content-type: 'text/json'属性,⽤来标明这个数据是以json格式传来的。这个时候这种使⽤.获取属性的⽅式就不起作⽤了
[]赋值⽅式
var obj = {
name: 'Tom',
age: 20
}
obj['name'] = "Jack"
这种赋值⽅式适⽤于所有的场景,包括上⾯不能使⽤.号赋值的情况
let response = {
'content-type': 'text/json',
body: {
data: {
obj: {name: 'Tom', age: 20}
}
}
}
obj['content-type'] = 'text/txt'
.赋值只能适⽤于字段名没有特殊符号如:-、空格等,但是[]可以⽤于任何情况
[]还可以⽤于字段名是⼀个变量的情况js的基本数据类型
var obj = {}
var var1 = 'gender'
var val = '男'
obj[var1] = val
但是实际开发中能⽤.尽量使⽤.,因为语法简单,见名知意