位置: 编程技术 - 正文

javascript运行机制之this详细介绍(javascript运行环境有哪些)

编辑:rootadmin

this是面向对象语言中一个重要的关键字,理解并掌握该关键字的使用对于我们代码的健壮性及优美性至关重要。而javascript的this又有区别于Java、C#等纯面向对象的语言,这使得this更加扑朔迷离,让人迷惑。

this使用到的情况:1. 纯函数2. 对象方法调用3. 使用new调用构造函数4. 内部函数5. 使用call / apply 6.事件绑定

1. 纯函数

运行结果分析:纯函数中的this均指向了全局对象,即window。

2. 对象方法调用

运行结果分析:被调用方法中this均指向了调用该方法的对象。

3. 使用new调用构造函数

运行结果分析:new 构造函数中的this指向新生成的对象。

4. 内部函数

运行结果分析:内部函数中的this仍然指向的是全局对象,即window。这里普遍被认为是JavaScript语言的设计错误,因为没有人想让内部函数中的this指向全局对象。一般的处理方式是将this作为变量保存下来,一般约定为that或者self,如上述代码所示。

5. 使用call / apply

Note:apply和call类似,只是两者的第2个参数不同:[1] call( thisArg [,arg1,arg2,… ] ); // 第2个参数使用参数列表:arg1,arg2,... [2] apply(thisArg [,argArray] ); //第2个参数使用 参数数组:argArray 运行结果分析:使用call / apply 的函数里面的this指向绑定的对象。

6. 事件绑定事件方法中的this应该是最容易让人产生疑惑的地方,大部分的出错都源于此。

运行结果分析:以上2种常用事件绑定方法,在页面Element上的进行事件绑定(onclick="btClick();"),this指向的是全局对象;而在js中进行绑定,除了attachEvent绑定的事件方法外,this指向的是绑定事件的Elment元素。

推荐整理分享javascript运行机制之this详细介绍(javascript运行环境有哪些),希望有所帮助,仅作参考,欢迎阅读内容。

javascript运行机制之this详细介绍(javascript运行环境有哪些)

文章相关热门搜索词:javascript运行机制,javascript运行环境有哪些,js运行器安卓版下载,javascript运行器,javascript运行机制,javascript运行环境有哪些,javascript运行环境有哪些,javascript运行机制,内容如对您有帮助,希望把文章链接给更多的朋友!

JavaScript的strict模式与with关键字介绍 年月,ECMAScript发布了ECMAScript5,这距离上一个版本的ECMAScript3标准发布已经整整十年了,其间JavaScript虽然大行于web编程,ECMAScript4却最终因为利益相

javascript类型转换使用方法 (一)转换为字符串X+''toString()String()函数转换为字符串一般是将函数体输出,不过可以重写其toString方法(二)转换为数字parseInt(),parseFloat()使用Number()

js格式化时间和js格式化时间戳示例 /***时间对象的格式化;*/Date.prototype.format=function(format){/**eg:format="YYYY-MM-ddhh:mm:ss";*/varo={"M+":this.getMonth()+1,//month"d+":this.getDate(),//day"h+":this.getHours(),//hour"m+":t

标签: javascript运行环境有哪些

本文链接地址:https://www.jiuchutong.com/biancheng/373732.html 转载请保留说明!

上一篇:JavaScript初学者建议:不要去管浏览器兼容(javascript新手教程)

下一篇:JavaScript的strict模式与with关键字介绍

  • 银行存款利息收税吗
  • 残次品销售账务处理
  • 个体工商户是对公账户还是个人账户
  • 基本户被冻结怎么缴投标保证金
  • 未过户的车辆对车辆影响
  • 房地产公司支付工程款账务处理
  • 可控费用包括工资吗
  • 事业单位劳务派遣工作值得去吗
  • 一般纳税人税负率一般控制在多少?法律依据
  • 收到存款利息属于现金流量表
  • 出租设备应计入什么科目
  • 企业外包项目如何确认收入成本配比?
  • 原材料加工费怎么入账的
  • 工资扣款的规定
  • 外购烟叶税进项税额的扣除率
  • 建筑业预收账款如何缴税
  • 税款滞纳金怎么入账
  • 普通发票和专用发票的税点一样吗
  • 企业生产经营模式
  • 其他应付款坏账怎么处理
  • 资本公积转增的股票可以转让吗
  • 交易性金融资产属于什么类
  • 企业所得税的工资薪金包括社保
  • 筹建期固定资产汇算清缴
  • 媒体文件不能播放
  • unc方式
  • php读取目录
  • 同业代付融资
  • php统计目录中文怎么写
  • 销售地下车库缴纳哪些税
  • 冰岛北部内陆景观有哪些
  • thinkphp django
  • 未开票收入不申报处罚
  • c#怎么使用
  • jquery设置不可用
  • php公众号开发框架
  • 短期投资的入账成本
  • 矿山征收
  • 固定资产一次性扣除如何做账
  • 网商贷企业贷款条件
  • 织梦cms怎么样
  • 科技局创业扶持资金
  • 土地利息可以作为土增扣除吗
  • 增值税发票有哪些项目
  • mysql数据库函数
  • sql server 附加
  • 物资采购是
  • 伙食费怎么入账
  • 企业前期开办的费用怎么做会计分录
  • 固定资产折旧的计算方法
  • 政府会计制度下基建账
  • 债务重组账务记忆口诀
  • 免征的增值税如何处理
  • 购买汽车轮胎的注意事项
  • 发票未到货已入库会计分录 原材料
  • 对公账户进出账常识
  • 进项税额转出缴税放在什么科目里
  • 极速开票软件怎么开票
  • 账户与会计科目有什么联系与区别?
  • ubuntu 16.10
  • 使用windows防火墙禁止软件联网
  • 惠普笔记本重装系统后没有无线连接
  • linux在云计算中的使用
  • win7系统无法更改账户名称
  • win8控制面板怎么打开
  • 深入解析windows第7版
  • input submit、button和回车键提交数据详解
  • js opendialog
  • jquery.multiselect多选下拉框实现代码
  • linux的sed -i
  • linux shell脚本攻略(第3版)
  • jquery作品
  • js中弹出对话框
  • javascript怎么用
  • python中函数的功能及作用
  • 重庆电子税务局网页版登录
  • 地税编码哪里查
  • 生鲜肉类免税
  • 大连明珠卡手机nfc充值
  • 合伙企业的税收较高
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设