var guoer = {
name: 'yangguo',
arxhz: function () {
console.log('黯然销魂掌')
}
}
console.log(guoer.name)
console.log(guoer['name']) // name是属性名,这里加引号是固定写法
var a = 'name'
console.log(guoer.a) // undefined 因为guoer里面没有a属性
console.log(guoer[a]) // 这里的a不加引号,会解析a变量,把a替换成'name',相当于guoer['name']
// 如果我们确切的知道属性名是什么 那么就直接 对象名.属性名
// 如果属性名是存在一个变量里的 这个时候就需要 对象名[变量名]
// guoer.arxhz()
// var a = 'name'
// guoer.a // undefined
// guoer[a]
// 遍历:一个一个的查看
// 遍历对象使用for in
// for in的语法: for (var 变量 in 要遍历的对象) { }
// 根据对象的键值对来循环,对象里有多少个键值对for就会循环多少次
// 每一次循环得到的key就是当前键(属性名或者方法名)
for (var key in guoer) {
console.log(key)
// 如果这么写的话是去guoer这个对象里直接找key这个属性,并不会把key作为变量去取值
// console.log(guoer.key) // undefined
// 需要根据key变量先取到值,再用变量的值去对象里取
// 对象名[变量名] 这里的变量里存的是对象的属性名
console.log(guoer[key])
}