javascript new关键字做了什么

基本过程

1.创建一个空对象
2.空对象的原型指向其构造函数的原型属性
3.执行构造函数,且构造函数的this指向该对象
4.判断构造函数返回值类型,若为值类型,返回空对象本身,若为引用类型,返回这个引用类型

例如,创建Person的实例

function Person(name,age){
    this.name = name;
    this.age = age;
}

var obj = {};
obj.__proto__ = Person.prototype;
var result = Person.call(obj,name,age);
if(typeof(result) == ‘object‘){
    person = result;
}
else{
    person = obj;
}
return person
时间: 2024-10-27 18:55:06

javascript new关键字做了什么的相关文章

JavaScript加亮关键字

JavaScript加亮关键字,当在文章里头出现这些关键字,就把它加亮显示,文章是生成静态页面的,而这些关键字是能随时更新的,所以我想用JS来实现,不知道怎样来实现这样的功能.“点睛”的广告代码,很牛B,本想从中找出在FireFox下如何实现findText及pasteHTML类似效果的,我看了大半天,楞是没有看出个所以然来!还是自己慢慢研究吧. IE下有: var range = document.createRange(); FireFox下有:m.hrbfc120.com var rang

JavaScript 保留关键字

JavaScript 保留关键字 在 JavaScript 中,一些标识符是保留关键字,不能用作变量名或函数名. JavaScript 标准 所有的现代浏览器完全支持 ECMAScript 3(ES3,JavaScript 的第三版,从 1999 年开始). ECMAScript 4(ES4)未通过. ECMAScript 5(ES5,2009 年发布),是 JavaScript 最新的官方版本. 随着时间的推移,我们开始看到,所有的现代浏览器已经完全支持 ES5. JavaScript 保留关

用关键字做表名和字段时,如何删除

建表时千万要注意,避免使用关键字做表名和字段名. (1)在oracle中如果不小心用关键字做了字段名,在SQL中的使用方法:加上英文双引号,如下: 1 alter table RSFILEINFO drop column "DESC"; oracle中使用了关键字的字段常常不容易删除掉,要删除,使用上述语句.注意:删掉的字段名要大写. (2)在MySQL中如果使用了关键字,在SQL中的使用方法:加上符号·(倒符号,在数字键1的左边)如下: 1 select `desc` from ta

JavaScript的关键字和保留字

关键字: break case catch continue default delete do else finallyfor function if in instanceof new return switch thisthrow try typeof var void while with 保留字: abstract boolean byte char class const debugger doubleenum export extends fimal float goto impl

除了Web和Node,JavaScript还能做什么

前言 提起JavaScript,我们也许经常会想到的是,可以用来写Web页面嘛,又或者,会想起Node.js 这个服务端环境,搞前后端同构. 那么,除此之外, JavaScript还可以做什么? JavaScript可以 通过electron.js建设跨平台电脑桌面应用 通过树莓派和Node.js,沟通硬件 做电视机机顶盒应用,例如借助ntv.js 从Hybird到React-Native,编写跨平台的混合APP,或者原生APP 通过Cocos2d-x 框架或白鹭引擎,JS可以开发流行游戏 JS

javascript保留关键字

1.通用保留关键字 break delete function return typeof case do if switch var catch else in this void continue false instanceof throw while debugger finally new true with default for null try   2.ECMAScript 5 增加保留 class const enum export extends import super  

使用JavaScript和canvas做精确的像素碰撞检测

作者:Benjamin Horn 原文地址:Pixel accurate collision detection with Javascript and Canvas 我正在开发一个又要使用碰撞检测的游戏.我通常会使用简单高效的盒模型碰撞检测.盒子模型的主要原则就是把所有的物体都抽象成正方形,如果两个正方形有重叠,就认为是一次碰撞.这通常是一个简单的游戏所需要的.但是因为这种模型我之前用过多次,我想尝试一些更深刻更准确的方法. 我选择从像素级层面来看是否发生了碰撞.首先我要了解“像素是什么”.我

JavaScript搜索关键字高亮的实现

高亮功能主要是指对页面中指定区域的指定文字进行高亮显示,也就是背景着色.一般在搜索结果页面会经常用到这个功能. 下面就为大家提供一种解决方案,用javascript实现.遂平县敖松广告 首先在<head>中引入下面javascript方法: 01 <script type="text/javascript"> 02 //<![CDATA[ 03     //--------begin function fHl(o, flag, rndColor, url)

javascript this 关键字以及四种函数调用模式

最近在学习javascript ,被js中的this关键字搞得晕头转向,都不知道这个东西到底是干什么的,不同的地方所指的对象又不一样.在查询了很多的资料以后,终于有了一些眉目了. this的定义:在javascript中,上下文对象就是this指针,即被调用函数所处的环境,上下文对象的作用是一个函数内部引用调用它的对象本身. 上面就是javascript中this关键字的定义,单纯的理解来说还是很好理解的,但是真正到用的时候发现又是另外一回事了. 说到this的用法,就要谈到到this的作用域,