对于Javascript对象的一些理解


JavaScript支持对象的概念,我一直都理解的不太深,今天看了一下书,打算把这方面的知识记一下,方便以后查看与理解

1.创建对象

<!DOCTYPE HTML>
<html>
	<head>
		<title>Example</title>
	</head>
	<body>
		<script type="text/javascript">
			var myData = new Object();
			myData.name = "Tao";
			myData.weather = "sunny";
	
			document.write("Hello " + myData.name + ".");
			document.write("Today is " + myData.weather + ".");
</script>
	</body>
	</body>
</html>

通过调用 new Object() 的方式创建了一个对象,然后赋值给 myData 这个变量。在此之后,既可以像这样通过赋值的方式定义其属性。

myData.name = "ATao";

在这条语句之前,对象并没有一个名为name的属性。这条语句执行之后就有了这个属性,而且其值已被设置为ATao。像这样用变量名后加一句点在加属性名的方式就能获取该属性的值:document.write("Hello " + myData.name + ".");

2.使用对象字面量

<!DOCTYPE HTML>
<html>
	<head>
		<title>Example</title>
	</head>
	<body>
		<script type="text/javascript">
			var myData = {
				name:"ATao",
				weather:"sunny"
			}
			document.write("Hello " + myData.name + ".");
			document.write("Today is " + myData.weather + ".");
</script>
	</body>
	</body>
</html>

从代码清单中可以看出,属性的名称和值之间以冒号:分离,而各个属性之间又以逗号,分离。

3.为对象添加方法

<!DOCTYPE HTML>
<html>
	<head>
		<title>Example</title>
	</head>
	<body>
		<script type="text/javascript">
			var myData = {
				name:"ATao",
				weather:"sunny",
				printMessages: function () {
					document.write("Hello " + this.name + ". ");
					document.write("Today is " + this.weather + ". ");
				}
			};
			myData.printMessages();
</script>
	</body>
	</body>
</html>

此例将一个函数变成了一个名为printMessages的方法。注意,在方法内部使用对象属性时要用到this关键字。函数作为方法时,其所属对象会以关键字this的形式作为一个参数被传给他。上述代码清单的输出结果如下所示:

Hello ATao. Today is sunny.

创建对象之后,可以用来做许多事情

4.使用对象

对象最显而易见的操作是读取或修改属性值。

<!DOCTYPE HTML>
<html>
	<head>
		<title>Example</title>
	</head>
	<body>
		<script type="text/javascript">
			var myData = {
				name: "ATao",
				weather: "sunny",
			};
			
			myData.name = "DH";
			myData["weather"] = "raining";
			
			document.write("Hello " + myData.name + ". ");
			document.write("It is " + myData["weather"]);
		</script>
	</body>
	</body>
</html>

第一种想必大家都很熟悉,前面的也使用的这种例子。其做法是像这样用.将对象名和属性名连接在一起:

myData.name = "DH";

第二种则是类似数组索引,如下所示:

myData["weather"] = "raining";

在这种形式中,属性名作为一个字符串放在一对方括号之间。这种存取属性值的办法非常方便,应为可以用变量表述属性名。如下所示:

javascript
var myData = {
		  name:"ATao";
		  weather: "sunny";
};
		var propName = "weather";
		myData[ propName] = "raining";

在此基础上我们能使用枚举属性,下一次就来说说这个东西。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值