<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>JavaScript 对象</title>
</head>
<body>
<h3>JavaScript Object</h3>
<!--
对象是拥有属性和方法的数据,所有事物都可以成为对象;
例如一辆车是一个对象,他的属性有重量,颜色等,方法有启动,停止等;
对象是属性变量的容器;
对象属性(也叫键值对):键值对通常写法为 name : value (键与值以冒号分割)。
-->
<p id="demo" style="color: red;"></p>
<script type="text/javascript">
var obj = { /* 定义属性值的时候可以写成一行(name1 : '狗剩',name2 : '狗蛋'),也可以分行写 */
name1: '狗剩',
name2: '狗蛋',
day: 253 /* 最后一行是不加符号的 */
}; /* 一段代码结束加分号 */
/* 这里有两种方式可以访问上面的属性:obj.name1或者obj['name2'] */
document.getElementById('demo').innerHTML =
obj.name1 + '和' + obj['name2'] + '在一起' + obj.day + '天了!';
</script>
<p>-------------------------</p>
<h3>对象方法</h3>
<!-- 对象的方法定义了一个函数,并作为对象的属性存储。 -->
<p id="demo1" style="color: red;"></p>
<script type="text/javascript">
var obj1 = {
name1: '狗剩',
name2: '狗蛋',
day: 253,
test: function(){ /* 把对象方法function(),作为一个属性定义test,存储在obj1对象属性中; */
return this.name1 + '和' + this.name2 + '在一起' + this.day + '天了!';
}
};
document.getElementById('demo1').innerHTML = obj1.test();/* 输出 */
/* document.getElementById('demo1').innerHTML = obj1.test; */
/* obj1.test()加括号是直接访问这个方法,不加括号就是把obj1.test()方法用纯文本形式输出; */
/* 小结:可以通过这种方式创建对象方法 test: function(){...}
通过这种方式访问 obj1.test();obj1为对象名,test是对象属性名
*/
</script>
</body>
</html>