<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<!--
1.什么是对象?
* 多个数据的封装体
* 用来保存多个数据的容器
* 一个对象代表现实世界中一个事物
2.为什么要用对象?
* 统一管理多个数据
3.对象的组成?
* 属性: 属性名(字符串)和属性值(任意)组成
* 方法: 一种特别的属性(属性值是函数)
4.如何访问对象的内部数据?
* .属性名: 编码简单, 有时不能用
* ['属性名']: 编码麻烦, 能通用
-->
<script>
var a={
name:"huxuehao",
age:18,
setName:function(name){
this.name=name
},
setAge:function(age){
this.age=age
}
}
a.setName("huxuehao") //第一种调用
a['setAge'](18) //第二种调用
console.log(a.name, a['age'])
</script>
<!--
问题: 什么时候必须使用['属性名']的方式?
1. 属性名包含特殊字符: - 空格
2. 属性名不确定
-->
<script type="text/javascript">
var p = {}
//1. 给p对象添加一个属性: content type: text/json
// p.content-type = 'text/json' //不能用
p['content-type'] = 'text/json'
console.log(p['content-type'])
//2. 属性名不确定
var propName = 'myAge'
var value = 18
// p.propName = value //不能用
p[propName] = value
console.log(p[propName])
</script>
</body>
</html>