概述
文章目录
- js中的应用
- prototype
- new
- 构造函数
js中的应用
注意:js 中的函数其实是对象,函数名是对 Function 对象的引用。
在js逆向中的应用:
function n() {
//其中代码省略
} //函数对象
n.prototype.xxx=function() {} //给对象添加一个叫xxx的方法
//以后遇到n.prototype.xxx这种格式时,n必须使用new来实例化后,后续代码中才可以使用n.xxx方法
prototype
所有的 JavaScript 对象都会从一个 prototype(原型对象)中继承属性和方法。
JavaScript 对象有一个指向一个原型对象的链。当试图访问一个对象的属性时,它不仅仅在该对象上搜寻,还会搜寻该对象的原型,以及该对象的原型的原型,依次层层向上搜索,直到找到一个名字匹配的属性或到达原型链的末尾。
使用 prototype 属性就可以给对象的构造函数添加新的属性或方法:
例子:
function Person(first, last, age, eyecolor) {
this.firstName = first;
this.lastName = last;
this.age = age;
this.eyeColor = eyecolor;
}
Person.prototype.nationality = "English";
function Person(first, last, age, eyecolor) {
this.firstName = first;
this.lastName = last;
this.age = age;
this.eyeColor = eyecolor;
}
Person.prototype.name = function() {
return this.firstName + " " + this.lastName;
};
new
在JavaScript中,new运算符用于创建一个自定义对象实例,或者是一个构造函数内置对象的实例。
- new 命令的作用,就是执行构造函数,返回一个实例对象。
var Vehicle = function () {
this.price = 1000;
};
var v = new Vehicle(); //令构造函数 Vehicle 生成一个实例对象,保存在变量 v 中
v.price // 1000
//new 命令执行时,构造函数内部的 this ,就代表了新生成的实例对象, this.price 表示实例对象有一个 price 属性,值是1000。
注意:
-
下面两行代码是等价的,但是为了表示这里是函数调用, 推荐使用括号 。
// 推荐的写法 var v = new Vehicle(); // 不推荐的写法 var v = new Vehicle; `
构造函数
- 面向对象编程的第一步,就是要生成对象。通常需要一个模板,表示某一类实物的共同特征,然后对象根据这个模板生成。
- JavaScript 语言使用构造函数(constructor)作为对象的模板。 “构造函数”,就是专门用来生成实例对象的函数。
- 它就是对象的模板,描述实例对象的基本结构。一个构造函数,可以生成多个实例对象,这些实例对象都有相同的结构。
- 为了与普通函数区别,构造函数名字的第一个字母通常大写。
最后
以上就是合适蜻蜓为你收集整理的js逆向之prototype(原型对象)和newjs中的应用prototypenew的全部内容,希望文章能够帮你解决js逆向之prototype(原型对象)和newjs中的应用prototypenew所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复