this常用的用法
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常用的用法的更多相关文章
- [转]jQuery的each方法的几种常用的用法
下面提一下jQuery的each方法的几种常用的用法 复制代码 代码如下: var arr = [ "one", "two", "three&quo ...
- python笔记之常用模块用法分析
python笔记之常用模块用法分析 内置模块(不用import就可以直接使用) 常用内置函数 help(obj) 在线帮助, obj可是任何类型 callable(obj) 查看一个obj是不是可以像 ...
- ansible常用模块用法
ansible常用模块用法 2015-07-21 10:25 24458人阅读 评论(1) 收藏 举报 分类: Linux(44) ansible 版权声明:本文为博主原创文章,未经博主允许不得 ...
- Anaconda中常用的用法
Anaconda中常用的用法 conda 是开源包(packages)和虚拟环境(environment)的管理系统. packages 管理: 可以使用 conda 来安装.更新 .卸载工具包 ,并 ...
- HTML常用标签用法及实例
HTML常用标签用法及实例1.<!--1.注释-->2.<!--2.DOCTPYE 声明文档类型-->3.<!--3.a--> <a href="h ...
- GNU g++常用编译选项用法
GNU g++常用编译选项用法 本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/30686/showart_1210761.html GCC ...
- C++中string常用函数用法总结
string(s小写)是C++标准库中的类,纯C中没有,使用时需要包含头文件#include<string>,注意不是<string.h>,下面记录一下string中比较常用的 ...
- Delphi常用关键字用法详解
本文详细介绍了Delphi中常用的各个关键字名称及用法,供大家在编程过程中借鉴参考之用.详情如下: absolute: ? 1 2 3 4 5 6 7 8 9 10 //它使得你能够创建一个新变量, ...
- hbase基本概念和hbase shell常用命令用法
1. 简介 HBase是一个分布式的.面向列的开源数据库,源于google的一篇论文<bigtable:一个结构化数据的分布式存储系统>.HBase是Google Bigtable的开源实 ...
- 【转载】HBase基本概念和hbase shell常用命令用法
1. 简介 HBase是一个分布式的.面向列的开源数据库,源于google的一篇论文<bigtable:一个结构化数据的分布式存储系统>.HBase是Google Bigtable的开源实 ...
随机推荐
- 【bzoj1965】[Ahoi2005]SHUFFLE 洗牌
x*2^m==l (mod n+1)x=(n/2+1)^m*l mod n+1 #include<algorithm> #include<iostream> #include& ...
- Perl Compatible Regular Expressions
http://www.pcre.org/ http://www.pcre.org/
- HDU3829 Cat VS Dog —— 最大独立集
题目链接:https://vjudge.net/problem/HDU-3829 Cat VS Dog Time Limit: 2000/1000 MS (Java/Others) Memory ...
- ”吐槽“qemu的块设备驱动
花点时间来总结一下前阵子的工作. qemu的底层块设备无疑是我所见过的最复杂的模块了,说得好像我很精通很多模块一样(大雾). 它的raw镜像格式文件的驱动的核心代码主要都是在raw-posix.c文件 ...
- 有向图强连通分量的Tarjan算法(转)
[有向图强连通分量] 在有向图G中,如果两个顶点间至少存在一条路径,称两个顶点强连通(strongly connected).如果有向图G的每两个顶点都强连通,称G是一个强连通图.非强连通图有向图的极 ...
- bleve搜索引擎源码分析之索引——mapping真复杂啊
接下来看看下面index部分的源码实现: data := struct { Name string Des string }{ Name: "hello world this is bone ...
- Ural2040:Palindromes and Super Abilities(离线&manecher算法)
Dima adds letters s1, …, sn one by one to the end of a word. After each letter, he asks Misha to tel ...
- vs2010统计代码行数
参考:http://www.cnblogs.com/zfanlong1314/archive/2013/03/08/2950100.html 正则表达式:^:b*[^:b#/]+.*$ 文件类型:*. ...
- linux上用mplayer播放264文件
Linux上,264视频裸码流可用mplayer进行播放. 同时,可用-fps参数控制帧率. 参考:http://www.chinavideo.org/archiver/?tid-16088.html
- C# 多边形面积计算公式
最近在做地图相关面积计算显示工作,百度了很多关于多边形面积计算方面公式和代码,只能说贼费劲,最终完成了把结果展示下 原理:鞋带公式 定义:所述鞋带式或鞋带算法(也称为高斯的面积公式和测量员的式 ...