位置: 编程技术 - 正文

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关键字介绍

  • 商品流通企业税种有哪些
  • 销项税额是开票金额么
  • 要约收购期满
  • 应交税金应交增值税已交税金怎么结转
  • 产品没货怎么给客户解释
  • 土地租赁合同要公证吗
  • 应收账款计提坏账后收回的会计分录
  • 影视公司招演员
  • 个体行业哪些不需要交税
  • 工资表不给看
  • 个人独资企业可以不开公户吗
  • 工薪个人所得税扣除
  • 发票认证系统查不到发票
  • 小规模企业现金规定最新
  • macbook如何安装
  • 上个月转出的进项税,下个月申报
  • 事业单位财政拨款是编制吗
  • 收到母公司的投资款
  • 技术合同包括哪些类型
  • 税控盘抵减
  • 太超过了
  • 累积带薪缺勤的原因分析
  • kcleaner.exe是什么
  • 工会经费是职工工资总额的
  • php自定义字段
  • php返回值
  • 专项基金设立
  • vue中使用nodejs
  • 深度学习环境配置(pytorch版本)----超级无敌详细版(有手就行)
  • linux中web服务器的安装,配置与测试
  • 应收账款的账期是什么意思
  • 处置资产的账务处理
  • 训练自己的GPT
  • 增值税发票抵扣联和发票联
  • 股东投资款怎么存入公司
  • 企业可以收付实现制记账吗
  • 合伙企业退伙如何缴纳个人所得税
  • phpcms专题页面模板
  • 购买一台电脑2400元贵吗
  • 职工教育经费税收金额怎么算
  • 健身房注册公司能注册医疗吗?
  • 事业单位人员收受财物
  • 发放工资的转账支票收款人
  • sql server 2008数据库引擎等安装失败
  • 生活服务的行业
  • 物业广告怎么收费
  • 根据sql脚本修改数据类型
  • 固定资产错记到费用了怎么办
  • 出口退税申报系统汇率修改
  • 销售返利可以计入销售费用吗
  • 应收账款计提坏账比例
  • 合并报表的内部投资抵消
  • 金税盘销项税额怎么导出来
  • 主营业务成本做多了怎么办
  • sql server执行语句
  • macbookpro怎么改系统
  • 苹果mac电脑删除打印机后还显示网络错误
  • info.exe病毒
  • 如何重装edge
  • 免费升win10时升级后一直有效吗
  • linux怎么刻录光盘
  • linux判断程序是否运行
  • 电脑win7不能用怎么办
  • 开机慢怎么解决 w8
  • 升级打装备的手游
  • win10系统升级后共享打印机不能用
  • opengl 投影矩阵
  • 使用css实现全兼容的方法
  • 分享一下什么
  • shell脚本编写 方法
  • python求解析解
  • inputchange
  • jQuery实现Select左右复制移动内容
  • jquery iframe
  • 如何查询税务是否签订三方
  • 深圳国税电子税务局
  • 河北农信登录密码错误
  • 拿了全额发票必须按时办理房产证吗
  • 经营租赁属于什么费用
  • 财务制度备案表单怎么填
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设