Js对象的属性2种调用方式

138 阅读1分钟

JS有2种对象属性调用方式

1,.方式调用

这是常规方式,但有些场合无法使用,只能使用['属性名']的方式

var p={}
p.age=18

2,使用['属性名']调用的场景

1.属性名包含特殊字符:-或者空格

var p={}
// p.content-type='text/json'  //带有-字符使用会报错,但['属性名']方式可以
p['content-type']='text/json'
// console.log(p.content-type); //调用也会报错,无论是添加还是调用等使用带-或空格的都需要使用[]方式
console.log(p["content-type"]);

2.变量名不确定

var value=60
//p.proName=value  //此方法无法读取变量名myAge
//console.log(p); //{ 'content-type': 'text/json', proName: 60 } 此时p对象没有myAge属性,只有proName
p[proName]=value
console.log(p); //此时打印 { 'content-type': 'text/json', myAge: 60 },可以读取不确定的变量名