数据类型——对象(object)

组成

所谓对象,就是一种无序的数据集合,由若干个“键值对”(key-value)构成。{key: value} 是 JS 对象字面量写法

基本使用

    name: 'hunger',
    age: 3,
    sayHello: function(){
        console.log('hello world')
    }
}
console.log(company.name)
console.log(company['name'])
company.sayHello()

company.addr = '杭州市'
compay['business'] = '前端课程'

for(var key in company){
    console.log(key)
    console.log(company[key])
}

详细介绍

键名

  • 对象的所有键名都是字符串,所以加不加引号都可以。
  • 如果键名是数值,会自动被转为字符串。
  • 如果键名不符合标识符规则,也不是数字,则必须加上引号,否则会报错。

属性

  • 对象的每一个“键名”又称为“属性”(property),它的“键值”可以是任何数据类型。如果一个属性的值为函数,通常把这个属性称为“方法”,它可以像函数那样调用。

表达式还是语句?

  • JavaScript规定,如果行首是大括号,一律解释为语句(即代码块)。如果要解释为表达式(即对象),必须在大括号前加上圆括号。

属性的操作

  • 读取属性
    读取对象的属性,有两种方法,一种是使用点运算符,还有一种是使用方括号运算符。
  p: 'Hello World'
};

o.p // "Hello World"
o['p'] // "Hello World"

上面代码分别采用点运算符和方括号运算符,读取属性p。

请注意,如果使用方括号运算符,键名必须放在引号里面,否则会被当作变量处理。但是,数字键可以不加引号,因为会被当作字符串处理。

  • 检查变量是否声明
    如果读取一个不存在的键,会返回undefined,而不是报错。可以利用这一点,来检查一个全局变量是否被声明。
  • 属性的赋值

你可能感兴趣的:(数据类型——对象(object))