谈谈JavaScript的New关键字
JavaScript中的New关键字:创建实例对象与继承的奥秘
在JavaScript中,原型和闭包是最常见且最难以理解的两个部分,它们常常被视为问题的源头,以及更复杂的概念如作用域链和继承等。最近我对此进行了深入研究,并想分享一些关于JavaScript中New关键字的理解,通常我们用它来创建一个类的实例对象。
让我们了解一下如何通过New关键字在JavaScript中创建一个实例对象。假设我们有一个Person类,我们可以通过New关键字来实例化一个对象,这个对象会继承类的属性和方法。看下面的代码示例:
```javascript
function Person(name){
this.name = name;
}
Person.age= "23";
Person.prototype.say = function(){
console.log("I'm " + this.name);
};
var person = new Person("王方");
```
在这个例子中,当我们使用`new Person("王方")`时,JavaScript引擎做了以下几件事:
1. 创建一个新的空对象。
2. 将这个新对象的__proto__指向Person的原型对象prototype,从而建立原型链:obj -> Person.prototype -> Object.prototype -> null。
3. 在这个新对象(也可以看作是一个执行空间)中调用Person函数,并传递参数“王方”。这个新对象会继承Person的属性和方法。在这个例子中,新对象person继承了name属性和say方法。
4. 判断Person函数的返回值。如果返回的是非对象值,则返回新创建的对象;否则返回这个返回值。
通过New关键字,我们可以轻松地在JavaScript中创建类的实例对象,并实现继承。记住,Person是一个函数,而person是一个对象。New关键字的主要作用就是实现这种从函数到对象的转化,以及继承机制。
以上就是关于JavaScript中New关键字的一些基础知识。希望这篇文章能帮助大家更好地理解这个概念,也希望大家能多多支持我的博客。接下来我会继续分享关于函数与对象之间的区别,以及其他一些JavaScript的进阶知识。敬请期待!
编程语言
- 谈谈JavaScript的New关键字
- 详解javascript函数的参数
- 巧妙使用JQuery Clone 添加多行数据,并更新到数据
- 关于asp.net 自定义分页控件
- php中Snoopy类用法实例
- 如何在数据库中用好Transaction?
- 用类的继承关系(重写父类的方法)实现简易后台代
- windows下vue-cli及webpack搭建安装环境
- 详解微信UnionID作用
- web前端超出两行用省略号表示的实现方法
- JavaScript实现隐藏省略文字效果的方法
- PHP调用Mailgun发送邮件的方法
- jquery简单倒计时实现方法
- jQuery对象与DOM对象之间的相互转换
- php选择排序法实现数组排序实例分析
- js实现数组转换成json