《悟透JavaScript》学习札记八之构造对象
来源:互联网 发布:php while sleep 编辑:程序博客网 时间:2024/05/01 11:47
<script type="text/javascript">
function MyFunc(){}; // 定义一个空函数
var obj1 = new MyFunc();
var obj2 = new MyFunc; // 函数可以没有括号,但仍将调用该函数!
// 还可以用下面的等价形式
function MyFunc(){};
var obj = {}; // 创建一个对象
MyFunc.call(obj); // 将obj对象作为this指针调用MyFunc函数
function Person(name) //带参数的构造函数
{
this.name = name; // 定义并初始化name属性
this.SayHello = function () // 定义对象方法SayHello
{
alert("Hello, I'm " + this.name);
};
};
function Employee(name, salary) // 子构造函数
{
Person.call(this, name); // 调用父构造函数
this.salary = salary;
this.ShowSalary = function ()
{
alert(this.name + " $ " + this.salary);
};
};
var BillGates = new Person("Bill Gates");
var Kevin = new Person("Kevin");
var SteveJobs = new Employee("Steve Jobs", 5000);
BillGates.SayHello(); // output: I'm Bill Gates
SteveJobs.SayHello(); // output: I'm Steve Jobs
SteveJobs.ShowSalary(); // output: Steve Jobs $ 5000
alert(BillGates.constructor == Person); // true
alert(SteveJobs.constructor == Employee); // true
alert(BillGates.SayHello == SteveJobs.SayHello);
alert(BillGates.SayHello == Kevin.SayHello);
// false, 函数即对象。同一类的对象各有一份方法代码,显然是种浪费。
</script>
<script type="text/javascript">
// 以下通过定义全局函数实现方法共享
function SayHello() // 定义全局SayHello函数
{
alert("Hello, I'm " + this.name);
};
function Person(name)
{
this.name = name;
this.SayHello = SayHello;
};
var p1 = new Person("Kevin");
var p2 = new Person("Mike");
alert(p1.SayHello == p2.SayHello); // true
</script>
- 《悟透JavaScript》学习札记八之构造对象
- 《悟透javascript》学习笔记:八、构造对象
- 《悟透JavaScript》学习札记五之奇妙的对象
- 《悟透JavaScript》学习札记六之放下对象
- 《悟透JavaScript》学习札记七之对象素描
- 《悟透JavaScript》学习札记之标准网页
- javaScript系列之使用构造方法创建js对象(八)
- 《悟透JavaScript》学习札记一之回归简单
- 《悟透JavaScript》学习札记二之没有类
- 《悟透JavaScript》学习札记三之函数的魔力
- 《悟透JavaScript》学习札记九之初看原型
- 《悟透JavaScript》学习札记十之原型扩展
- 《悟透JavaScript》学习札记十一之原型真谛一
- 《悟透JavaScript》学习札记十一之原型真谛二
- 《悟透JavaScript》学习札记之响应DOM事件
- 《悟透JavaScript》学习札记之响应DOM事件
- 悟透JavaScript之构造对象 (2)
- 悟透JavaScript之构造对象(1)
- ora-01149错误
- 黑马程序员------IO学习笔记
- 获得所有联系人信息。。。随便用,我也是借鉴别人的然后自己写出来的
- c++中声明回调函数
- 中国字的博大精深
- 《悟透JavaScript》学习札记八之构造对象
- python 3 对dns负载均衡环境下的web服务器的监控脚本
- 嵌入式系统基础 1
- hibernate基于注解,在Set属性中控制返回顺序
- 嵌入式系统基础 2
- 嵌入式系统基础 3
- Perfect Cubes(zoj_1331-————the beginner problem)
- 关于linux的链表之list_entry和内存对齐
- vs2008 opencv 2.1 编译环境搭建