1.函数作为对象的方法时,this指的是该对象;
var obj ={
name:"bob",
age:25,
getName:function(){
console.log(this.name) ------->//bob
}
}
obj.getName(); 2.局部函数里的this指的是window对象
var age=30;
var obj ={
name:"bob",
age:25,
getAge:function(){
function aa(){
console.log(this.age) ------->//
}
aa();
console.log(this.age) ------->//
}
}
obj.getAge(); 3.构造函数动态this
function Car(name,price){ //构造函数
this.name = name;
this.age = age;
this.date = "2016.03.02";
} Car.prototype.start = function(){
console.log(this.name + "定义函数对象的方法一")
} Car.prototype.end = function(){
console.log(this.name + "定义函数对象的方法二")
} Car.prototype.getPrice = function(){
console.log(this.price + "定义函数对象的方法三") //this指动态绑定对象 的实例(obj1,obj2谁做的)
} var obj1 = new Car("宝马",1000000) -------->创建一个新的对象
var obj2 = newCar("奥迪",400000) -------->再创建一个对象分配另一个实例
obj1.getPrice(); -------->//它调用时候是1000000
obj2.getPrice(); -------->//它调用时候是400000 4.this的链式调用
function Car(name,price){ //构造函数
this.name = name;
this.age = age;
this.date = "2016.03.02";
} Car.prototype.start = function(){
console.log(this.name + "定义函数对象的方法一")
return this;
} Car.prototype.end = function(){
console.log(this.name + "定义函数对象的方法二")
return this;
} Car.prototype.getPrice = function(){
console.log(this.price + "定义函数对象的方法三") //this指动态绑定对象 的实例(obj1,obj2谁做的)
return this;
} var obj1 = new Car("宝马",1000000) -------->创建一个新的对象
var obj2 = newCar("奥迪",400000) -------->再创建一个对象分配另一个实例
obj1.getPrice(); -------->//它调用时候是1000000
obj2.getPrice(); -------->//它调用时候是400000 obj1.getPrice().start().end(); -------->//它调用了三个方法,是通过retur this来实现!!! 如果函数直接调用如 aa();默认this为window对象;

this常用的用法的更多相关文章

  1. [转]jQuery的each方法的几种常用的用法

    下面提一下jQuery的each方法的几种常用的用法 复制代码 代码如下:  var arr = [ "one", "two", "three&quo ...

  2. python笔记之常用模块用法分析

    python笔记之常用模块用法分析 内置模块(不用import就可以直接使用) 常用内置函数 help(obj) 在线帮助, obj可是任何类型 callable(obj) 查看一个obj是不是可以像 ...

  3. ansible常用模块用法

    ansible常用模块用法 2015-07-21 10:25 24458人阅读 评论(1) 收藏 举报  分类: Linux(44)   ansible 版权声明:本文为博主原创文章,未经博主允许不得 ...

  4. Anaconda中常用的用法

    Anaconda中常用的用法 conda 是开源包(packages)和虚拟环境(environment)的管理系统. packages 管理: 可以使用 conda 来安装.更新 .卸载工具包 ,并 ...

  5. HTML常用标签用法及实例

    HTML常用标签用法及实例1.<!--1.注释-->2.<!--2.DOCTPYE 声明文档类型-->3.<!--3.a--> <a href="h ...

  6. GNU g++常用编译选项用法

    GNU g++常用编译选项用法 本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/30686/showart_1210761.html GCC ...

  7. C++中string常用函数用法总结

    string(s小写)是C++标准库中的类,纯C中没有,使用时需要包含头文件#include<string>,注意不是<string.h>,下面记录一下string中比较常用的 ...

  8. Delphi常用关键字用法详解

    本文详细介绍了Delphi中常用的各个关键字名称及用法,供大家在编程过程中借鉴参考之用.详情如下: absolute: ? 1 2 3 4 5 6 7 8 9 10 //它使得你能够创建一个新变量, ...

  9. hbase基本概念和hbase shell常用命令用法

    1. 简介 HBase是一个分布式的.面向列的开源数据库,源于google的一篇论文<bigtable:一个结构化数据的分布式存储系统>.HBase是Google Bigtable的开源实 ...

  10. 【转载】HBase基本概念和hbase shell常用命令用法

    1. 简介 HBase是一个分布式的.面向列的开源数据库,源于google的一篇论文<bigtable:一个结构化数据的分布式存储系统>.HBase是Google Bigtable的开源实 ...

随机推荐

  1. Django的缓存,序列化,ORM操作的性能

    1,缓存:把数据先保存在某个地方,下次再读取的时候不用再去原位置读取

  2. 请说出作用域public,private,protected,以及不写时的区别

    这四个作用域的可见范围如下表所示. 说明:如果在修饰的元素上面没有写任何访问修饰符,则表示friendly. 作用域    当前类 同一package 子孙类 其他package public    ...

  3. make的特殊之处

    1 规则的先后顺序问题 规则的先后顺序只会影响默认的目标,没有其它的影响. 2 make对具有相同目标的规则的处理方式 2.1 如果是单冒号 只能有一个规则是有命令的,然后对它们进行合并,即依赖合并. ...

  4. Android ConstraintLayout的基本使用

    升级Android studio到2.3版本之后,发现新建Activity或fragment时,xml布局默认布局由RelativeLayout更改为ConstraintLayout了,既然已经推荐使 ...

  5. cell.getCellType有几种

    CellType 类型 值CELL_TYPE_NUMERIC 数值型 0CELL_TYPE_STRING 字符串型 1CELL_TYPE_FORMULA 公式型 2CELL_TYPE_BLANK 空值 ...

  6. 前端之html第二天

    一.内容

  7. JS 对java返回的json格式的数据处理

    var dataObj=eval("("+res+")"); alert(dataObj.billBuy) //res是如下的数据 {"billBuy ...

  8. “Live Desktop” privacy statement

    “Live Desktop” pays attention to your privacy protection. Sometimes we need some information to prov ...

  9. Jmeter压测Thrift服务接口

    此文已由作者夏鹏授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. Apache Jmeter是基于Java开发的性能测试工具,支持多种协议的测试,包括:Web(HTTP/HTT ...

  10. bzoj 1632: [Usaco2007 Feb]Lilypad Pond【bfs】

    直接bfs,在过程中更新方案数即可 #include<iostream> #include<cstdio> #include<queue> using namesp ...