JavaScript构造函数解析
来源:互联网 发布:梦幻2017改版盘丝数据 编辑:程序博客网 时间:2024/05/18 17:45
JavaScript语言是一门面向对象的语言,但是JavaScript中并没有类的概念的。于是JavaScript采用构造函数的方式来模拟类的效果,即我们通过函数来创建对象。这也证明了函数在JavaScript中具有非常重要的地位。
一、简单例子:
- var Book = function(name, price) {
- this.name = name;
- this.price = price;
- }
- var java = new Book('Java', 82);
var Book = function(name, price) {this.name = name;this.price = price;}var java = new Book('Java', 82);
普通函数与构造函数本质上没有任何区别,只是我们调用的方式不同而已,关键在于一个字 new。
调用构造函数:newfunction_name();
调用普通函数:function_name();
在函数中有一个this对象,this始终代表该函数的调用者。
如果是构造函数,this就是构造出来的新对象。
如果是普通函数,this就是 window 对象。
如果使用new关键字调用,那么函数的 return语句不再起作用,因为这时还回的是 this对象。
- var Book = function(name, price) {
- this.name = name;
- this.price = price;
- if (this == window) {
- return 'name = ' + name + ", price = " + price;
- }
- else{
- alert("this book's name" + name +"price is "+ price)
- }
- }
- var result = Book("Java", 100);
- alert(result);
- var book=new Book("Java", 100);
var Book = function(name, price) { this.name = name; this.price = price; if (this == window) { return 'name = ' + name + ", price = " + price; }else{alert("this book's name" + name +"price is "+ price)} } var result = Book("Java", 100); alert(result); var book=new Book("Java", 100);
运行结果如下。首先弹出:
表示当前使用调用普通函数的方法调用Book()函数时this就是 window 对象。
然后弹出的结果为:表示如果使用new关键字调用,this就是构造出来的新对象。
0 0
- JavaScript构造函数解析
- JavaScript构造函数解析
- javascript 构造函数内return 解析
- c++构造函数解析
- 构造函数 实例解析
- javascripte构造函数解析
- 构造、解析函数
- 构造函数解析
- Javascript构造函数
- JavaScript构造PHP函数
- JavaScript 构造函数
- JavaScript构造函数
- JavaScript之构造函数
- JavaScript构造函数浅谈
- JavaScript构造函数原理
- javaScript构造函数继承
- JavaScript 构造函数
- javascript构造函数
- Composer
- 《犀利仁师》曝预告 吴奇隆刘诗诗过招
- 物联网学习(一)
- 【数据结构】双向链表表示和实现
- 海量数据面试题整理 分类: 面试珠玑
- JavaScript构造函数解析
- 一段经典的机器语言程序!
- 程序员的回归式进化
- Visual Assist X 快捷键
- 【转载】WinSock编程基础
- python学习笔记
- MySql Host is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts' 解决方法
- java
- WCF AJAX在asp.net上的初级实现DEMO