一、this
1、作为函数调用
var x = 1;
function test(){
this.x = 0; //this是全局对象
}
test();
alert(x); //0
2、作为对象的方法调用
3、作为构造函数调用
var x = 2;
function test(){
this.x = 1; //this是局部对象
}
var o = new test();
alert(x); //2
4、apply调用修改指向对象
var x = 0;
function test(){
alert(this.x);//this指向全局对象
}
var o={};
o.x = 1;
o.m = test;
o.m.apply(); //0
//o.m.apply(o); 输出1
二、in
in运算符可以用来判断,某个实例是否含有某个属性,不管是不是本地属性。
还可以用来遍历某个对象的所有属性.
三、prototype
1、isPrototypeOf()
这个方法用来判断,某个proptotype对象和某个实例之间的关系。
alert(Cat.prototype.isPrototypeOf(cat1)); //true
2、 hasOwnProperty()
每个实例对象都有一个hasOwnProperty()方法,用来判断某一个属性到底是本地属性,还是继承自prototype对象的属性。
alert(cat1.hasOwnProperty("name")); // true
javascript->this ,in ,prototype
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 第三章 基本概念 3.1 语法 ECMAScript标识符一般采用驼峰大小写格式,也就是第一个字母小写,剩下的每个...
- Chapter 6 面向对象的程序设计 理解对象 使用对象字面量语法创建对象var person = { n...
- 元素位置 一般惯例是在 元素中包含所有的 元素,但是这就意味着必须等到全部的javascript代码都被下载、解析...