JS中this的四种用法

1.在一般函数方法中使用 this 指代全局对象

function test(){this.x = 1;alert(this.x);}test(); // 1

2.作为对象方法调用,this 指代上级对象

function test(){alert(this.x);
}
var o = {};
o.x = 1;
o.m = test;
o.m(); // 1

3.作为构造函数调用,this 指代new 出的对象

  function test(){this.x = 1;}var o = new test();alert(o.x); // 1//运行结果为1。为了表明这时this不是全局对象,我对代码做一些改变:var x = 2;function test(){this.x = 1;}var o = new test();alert(x); //2

 

4.apply 调用 ,apply方法作用是改变函数的调用对象,此方法的第一个参数为改变后调用这个函数的对象,this指代第一个参数

  var x = 0;function test(){alert(this.x);}var o={};o.x = 1;o.m = test;o.m.apply(); //0
//apply()的参数为空时,默认调用全局对象。因此,这时的运行结果为0,证明this指的是全局对象。如果把最后一行代码修改为
o.m.apply(o); //1

 

转载于:https://www.cnblogs.com/pabitel/p/5922511.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/470053.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mysql lib 5.5.28_mysql5.5.28在Linux下的安装

mysql5.5.28在Linux下的安装1. 下载mysql2. 解压假如tar包在/home/zdw/software目录下#tar -xvf mysql-5.5.28-linux2.6-i686.tar.gz3. 移动到/usr/local/mysql#mv mysql-5.5.28-linux2.6-i686 /usr/local/添加快捷方式mysql指向mysql-5.5.28-linux2.6-i686#ln -s mysql-5.5.28…

mysql与缓存脏读_MySQL 事务的隔离级别问题 之 脏读

1. 脏读所谓的脏读就是指一个事务读取了另一个事务未提取的数据。试想一下:a账户要给b账户100元购买商品,如果a账户开启一个事务,执行下面的update语句做了如下转账的工作:update account set moneymoney-100 where namea;update …

PHP MYSQL关键词统计系统_PHP MySQL Order By 关键词

ORDER BY 关键词ORDER BY 关键词用于对记录集中的数据进行排序。语法SELECT column_name(s)FROM table_nameORDER BY column_name注释:SQL 对大小写不敏感。ORDER BY 与 order by 等效。例子下面的例子选取 "Persons" 表中的存储的所有数据,并…

mysql 数据库引擎介绍_MYSQL 数据库引擎介绍

一般来说,MySQL有以下几种引擎:ISAM、MyISAM、HEAP、InnoDB和Berkley(BDB)。注意:不同的版本支持的引擎是有差异的。当然啦,如果你感觉自己的确技术高超,你还能够使用MySQL来创建自己的数据库引擎,这个已经…

linux解压eclipse启动时无法找到jre环境的解决办法

使用软链接的方法: 1.打开终端进入到eclipse安装主目录下:mkdir jre 2.cd jre 3.ln -s /home/zhoushuo/app/jdk1.8.0_102/bin bin转载于:https://www.cnblogs.com/shuo1208/p/5927218.html

linux as5 启动mysql_Red Hat AS5进入救援模式的步骤

当因为某些原因导致无法通过正常引导进入系统,如GRUB损坏或者误删除了某些重要的系统配置文件,或者进行某些特殊的系统维护任务,例如忘记了root用户的口令需要进行重置。就需要使用Linux救援模式。(1)放入操作系统光盘(2)boot:下输…

VC使用sqlite

SQLite可以到官方站点(http://www.sqlite.org/download.html)下载:Linux,Mac OS X, Windows下的已编译文件以及源代码、帮助文档。 SQLite官方下载只提供给我们一个sqlite3.dll跟一个sqlite3.def文件,并没有提供用于VC6.0的lib文件,可以利用s…

mysql5.7.10 二进制包_MYSQL5.7二进制包的安装

mysql5.7 二进制包安装1. 下载包wget http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.12-linux-glibc2.5-x86_64.tar.gz2. 解压tar xxvf mysql-5.7.12-linux-glibc2.5-x86_64.tar.gzmv mysql-5.7.12-linux-glibc2.5-x86_64 /usr/local/mysql3. 初始化useradd -M -s /sbin/…

easyUI文本框textbox笔记

知识点&#xff1a; 1.图标位置 Icon Align属性&#xff0c;有left和right两个&#xff1b; 2.textbox的setvalue方法&#xff0c;getvalue方法。 <div style"margin:10px 0 20px 0"><span>Select Icon Align: </span><select οnchange"$…

python代码计算字数_Python计算一个文件里字数的方法

本文实例讲述了Python计算一个文件里字数的方法。分享给大家供大家参考。具体如下&#xff1a;这段程序从所给文件中找出字数来。from string import *def countWords(s):wordssplit(s)return len(words)#returns the number of wordsfilenameopen("welcome.txt",r)#…

《A First Course in Probability》-chape4-离散型随机变量-几种典型分布列

超几何分布&#xff1a; 超几何分布基于这样一个模型&#xff0c;一个坛子中有N个球&#xff0c;其中m个白球&#xff0c;N-m个黑球&#xff0c;从中随机取n(不放回)&#xff0c;令X表示取出来的白球数&#xff0c;那么&#xff1a; 我们称随机变量X满足参数为(n,m,M)的超几何分…

sid更新 续订sas软件_顶级统计软件sas9.4 64位sid 有效期至2017年6月底

去掉去掉去掉去掉去掉去掉去掉去掉去掉去掉去掉去掉去掉去掉去掉去掉去掉去掉去掉去掉去掉去掉去掉去掉去掉去掉去掉去掉去掉去掉[_SID_]Version9.4Revision9.4Platform_longMicrosoft Windows Workstation for x64Platform_shortwx6Order9BHX96License_prodSASSetnumid1200146…

农历01

1、NongLi.cpp // NongLi.cpp : Defines the entry point for the console application. //#include <stdio.h> #include "xDate.h"// http://www.chinapyg.com/forum.php?modviewthread&tid2928int main(int argc, char* argv[]) {xDate *dateX new xDa…

java内联_JAVA中的内联函数

在说内联函数之前&#xff0c;先说说函数的调用过程。调用某个函数实际上将程序执行顺序转移到该函数所存放在内存中某个地址&#xff0c;将函数的程序内容执行完后&#xff0c;再返回到转去执行该函数前的地方。这种转移操作要求在转去前要保护现场并记忆执行的地址&#xff0…

两端对齐布局与text-align:justify

百分比实现 首先最简单的是使用百分比实现&#xff0c;如下一个展示列表&#xff1a; 1 <!DOCTYPE html>2 <html>3 <head>4 <meta charset"UTF-8">5 <title></title>6 <style type"text/cs…

java拆分单元格_Java 拆分Excel单元格数据为多列

一、概述及使用工具在Excel表格里面&#xff0c;可设置将单元格中的文本数据按分隔符拆分为多列&#xff0c;下面通过Java程序来介绍具体实现方法。这里使用Free Spire.XLS for Java(免费版)来实现数据分列&#xff0c;需要导入Spire.Xls.jar文件到Java程序&#xff0c;可参考以…

win10下安装centos7双系统

国庆最后一天了&#xff0c;闲来无事装个双系统&#xff0c;用虚拟机的linux总有些不方便。 window下安装linux双系统有两中方法&#xff1a; 1.U盘安装 &#xff08;我采用的方法&#xff0c;后面详述&#xff09; 2.EasyBCD工具安装 &#xff08;使用EasyBCD完美实现Windows7…

css 相对定位与绝对定位

相对定位的规律&#xff1a; 使用相对定位的盒子&#xff0c;会相对于它原来的位置&#xff0c;通过偏移指定的距离&#xff0c;到达新的位置。 使用相对定位的盒子仍在标准流中&#xff0c;它对父亲和兄弟盒子都没有任何影响。 绝对定位的规律&#xff1a; 使用绝对定位的盒子…

java swing进度条_Java Swing创建自定义闪屏:在闪屏上添加Swing进度条控件(转)

本文将讲解如何做一个类似MyEclipse启动画面的闪屏&#xff0c;为Java Swing应用程序增添魅力。首先看一下效果图吧&#xff0c;原理很简单&#xff0c;就是创建一个Dialog&#xff0c;Dialog有一个进度条和一个Label用来分别显示进度和进度信息&#xff0c;而Dialog的宽度和高…

java excel 模板 替换_JAVA POI替换EXCEL模板中自定义标签(XLSX版本)满足替换多个SHEET中自定义标签...

个人说明&#xff1a;为了简单实现导出数据较少的EXCEL(根据自定义书签模板)一、替换Excel表格标签方法/*** 替换Excel模板文件内容* param map* 需要替换的标签建筑队形式* param intPath* Excel模板文件路径* param outPath* Excel生成文件路径*/public static boolean repla…