JavaScript中Prototype字段使用

先直接贴代码, 一目了然

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
		<script>
			// [1], 使用 构造方法 创建 一个TestObj 对象
			function TestObj(x, y) {
				this.x = x;
				this.y = y;
			}
			
			// [2.1], 给对象 TestObj 添加一个 不加 prototype 的方法
			TestObj.xxx = function() {
				alert("xxx");
			}
			// [2.2], 给对象 TestObj 添加一个 添加 prototype 的方法
			TestObj.prototype.yyy = function() {
				alert("yyy");
			}

			// [3], 测试
			function test() {
				// [3.1], 实例化一个 TestObj 对象
				var y1 = new TestObj("11", "22");
				// [3.1.1], 不加 prototype 属性的 方法, 有点类似 java中的静态方法, 直接通过 对象调用
				//	y1.xxx("111111");	// 报错
				TestObj.xxx("111111");
				// [3.2], 实例化一个 TestObj 对象
				var x1 = new TestObj("11", "22");
				// [3.2.1], 加了 prototype 属性的方法, 有点类似java中的成员方法, 需要先实例化后, 才能使用
				x1.yyy("222222"); 
				// TestObj.yyy("222222");	// 报错
			}
		</script>
	</head>

	<body οnlοad="test()">
	</body>
</html>
 

通过代码测试, 我们得出结论: 

A.   使用 prototype字段的方法相当于Java中的实例方法,实例化即(必须new)后才能使用

B.   不使用prototype字段的方法相当于java中的静态方法,通过对象名可以直接使用,不需要实例化


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值