var a={a:123,b:"string"}
var b = "{a:123,b:'string'}"
console.log(a)
console.log(b)
alert(a)
alert(b)
//我猜的情况: 接口返回给你前端的数据是字符串,而不是object。
//1 试着将字符串转成object,推荐转成json 对象。
//2 和后端协商http的请求的返回值。把response type 改为使用json,而不是text,html之类的文本
网页链接
第一种通过.获取
第二种通过[]获取
那什么时候用点获取什么时候[]呢,可以在不同场景使用
两个的相同点:都是获取对象属性值
不同点:
1 [ ]运算符可以使用字符串变量的内容作为属性名,点运算符不能
普通常量赋值的时候可以用点运算符,其他可以用[]运算符,
1,使用for(var i in obj){
//i是对象键值命
//obj[i]是对应的键值
},
2,可使用 Object.keys(object) object是你需要操作的对象
Object.keys()会返回一个存储对象中所有key值的数组
获取当前对象每个key对应的值使用 object[key]