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. java语法基础(三)

    类和对象 面向对象语言概述 java是一种面向对象的语言,什么是面向对象的语言? 要搞清楚什么是面向对象语言,我们需要相对的了解一下面向过程的语言. java入门阶段,我们又给大家说过一些语言的分类, ...

  2. 内存溢出-jvisualvm排查问题

    先来一段能够内存溢出的程序 public static void main(String[] args) { List<Object> list = new ArrayList<&g ...

  3. HDU1542 Atlantis —— 求矩形面积并 线段树 + 扫描线 + 离散化

    题目链接:https://vjudge.net/problem/HDU-1542 There are several ancient Greek texts that contain descript ...

  4. YTU 2558: 游起来吧!超妹!

    2558: 游起来吧!超妹! 时间限制: 1 Sec  内存限制: 128 MB 提交: 70  解决: 22 题目描述 夏天到了,无聊的超妹跑到了落雪湖里抓鱼吃.结果,游到湖的正中 央时被湖边保安看 ...

  5. YTU 2958: 代码填充--雨昕学画画

    2958: 代码填充--雨昕学画画 时间限制: 1 Sec  内存限制: 128 MB 提交: 156  解决: 102 题目描述 雨昕开始学画水彩画,老师给雨昕一个形状(Shape)类,雨昕在Sha ...

  6. sqlserver2008Mail

    use msdb  GO    DROP PROC MailTim  GO    CREATE PROC MailTim  @Subject NVARCHAR(100),@Body NVARCHAR( ...

  7. Wireshark抓包分析TCP协议

      版权声明:本文为作者原创文章,可以随意转载,但必须在明确位置表明出处!!! 之前有一篇文章介绍了http协议「初识http协议」, http协议协议是基于tcp协议的,所以作者觉得有必要针对tcp ...

  8. 《JAVA与模式》之迭代子模式

    迭代子模式又叫游标(Cursor)模式,是对象的行为模式.迭代子模式可以顺序地访问一个聚集中的元素而不必暴露聚集的内部表象(internal representation). 聚集和JAVA聚集 多个 ...

  9. WebRTC PeerConnection

    PeerConnection 是WebRtc native interface 最外层的模块,  通常来说, 用户使用Peerconection就可以构建最简单的p2p 应用.     下面的UML里 ...

  10. MD5 密码加密算法 系统等待

    MD5 密码加密算法 public static String md(String md, String pass) { MessageDigest m; String passok = " ...