本文实例讲述了JavaScript面向对象。分享给大家供大家参考,具体如下:JavaScript 面向对
本文实例讲述了JavaScript 面向对象。分享给大家供大家参考,具体如下:
JavaScript 面向对象
- this:this代指对象(python self)
- 对象 = new 函数():创建对象:添加“new 函数()”相当与创建对象
- 类名:prototype={方法} : 创建类原型
类:
<script>
function Foo(n){
this.name = n;
this.sayName = function(){
console.log(this.name)
}
}
var obj1 = new Foo('jb51');
obj1.name
obj1.sayName()
var obj2 = new Foo('脚本之家');
obj2.name
obj2.sayName ()
</script>
运行结果:
注:obj1~2 对象内存里会重复调用this.sayName,从而增加内存损耗。 注:创建obj对象并传入参数、obj1.name就是we。 注:obj1.sayNmae() 执行方法 调用obj1的name等于we。
类原型:
<script>
function Foo(n){
this.name = n;
}
// Foo的原型
Foo.prototype = {
'sayName': function(){
console.log(this.name)
}
}
var obj1 = new Foo('欢迎访问');
obj1.name
obj1.sayName()
var obj2 = new Foo('www.jb51.net');
obj2.name
obj2.sayName()
</script>
运行结果:
注:每一个对象内只封装了一个name。 注:调用obj1.sayName()时会先找Foo类,然后在去Foo的原型里找sayName。
感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.jb51.net/code/HtmlJsRun测试上述代码运行效果。
JavaScript 面向对象