资讯专栏INFORMATION COLUMN

JavaScript[14] -- this

mating / 1138人阅读

摘要:总结方法自执行时,指向,被对象调用时,指向对象。可以用和改变指向。

总结:
方法自执行时,this指向window,被对象调用时,this指向对象。
可以用call(),apply()和bind()改变this指向。
默认绑定

全局环境中this默认绑定到window


函数独立调用,this默认绑定到window

  

被嵌套的函数独立调用,this默认绑定到window

    

闭包中函数独立调用,而不是方法调用,this默认绑定到window


隐式绑定

一般被直接对象包含的函数调用时,也叫方法调用,this存在隐式的绑定到该对象


隐式丢失

隐式丢失是指被隐式绑定的函数丢失绑定对象,从而默认绑定到window

   

函数在作为一个参数传递的时候,会隐式丢失,this默认指向Window

   

严格模式

开启严格模式: "use strict",避免未声明变量泄露



改变this指向(显式绑定)

call() 会自执行

1.当call()不传递参数的时候,this默认指向window
2.当call()传递参数时,,第一个参数必须指向某一个对象,后面的参数是实参

   
box

apply() 会自执行
1.接收两个参数,第一个是指向的某一个对象,第二个必须是一个数组,数组里面是函数需要的实参


bind() 不会自执行

box

小技巧

点击一个对象时,使用另一个对象的属性

box
box2

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/108403.html

相关文章

  • JavaScript严格模式介绍与总结

    摘要:严格模式的限制不允许使用未声明的变量报错未定义报错未定义不允许删除变量或对象。返回,因为指向全局对象,就是返回,因为严格模式下,的值为,所以为。 严格模式优势: 消除Javascript语法的一些不合理、不严谨之处,减少一些意外情况出现;消除代码运行的一些不安全之处,保证代码运行的安全;提高编译器效率,增加运行速度;注意,同样的代码,在严格模式中,可能会有不一样的运行结果;一些在正常模...

    fancyLuo 评论0 收藏0
  • JavaScript中的this陷阱的最全收集--没有之一

    摘要:提及的精髓,闭包作用域链函数是当之无愧的。博客的标题是中的陷阱的最全收集没有之一,很显然这篇博客阐述的是。这是造成很多不熟悉的人深陷陷阱的根源。你应该避免在构造函数里面返回任何东西,因为这可能代 当有人问起你JavaScript有什么特点的时候,你可能立马就想到了单线程、事件驱动、面向对象等一堆词语,但是如果真的让你解释一下这些概念,可能真解释不清楚。有句话这么说:如果你不能向一个6岁...

    KitorinZero 评论0 收藏0
  • javascript面向对象的常见写法与优缺点

    摘要:我们通过表单验证的功能,来逐步演进面向对象的方式对于刚刚接触的朋友来说,如果要写一个验证用户名,密码,邮箱的功能,一般可能会这么写表单验证全局全局全局这种写法,从功能上来说没有什么问题,但是在团队协作的时候,会造成覆盖全局变量的问题,那要大 我们通过表单验证的功能,来逐步演进面向对象的方式. 对于刚刚接触javascript的朋友来说,如果要写一个验证用户名,密码,邮箱的功能, 一...

    Ajian 评论0 收藏0
  • 听飞狐聊JavaScript设计模式系列14

    摘要:本回内容介绍上一回,聊了聊状态模式,并介绍了一下介一回,聊链式编程,模拟一下,再模拟一下封装一个库。这一回,主要聊了链式调用,模拟了,尤其是,希望大家能喜欢这次代码分享。下一回,聊一聊的策略模式。 本回内容介绍 上一回,聊了聊状态模式(State),并介绍了一下vue.js;介一回,聊链式编程,模拟一下jQuery,再模拟一下underscore.js,封装一个库。 1. 链式调用 (...

    fox_soyoung 评论0 收藏0
  • [译]14个你可能不知道的JavaScript调试技巧

    摘要:在控制台中使用,当到达传入的函数时,代码将停止。但除了私有和匿名函数这可能是找到调试函数的最快方法。在控制台中输入,当调用时,将以调试模式停止屏蔽不相关代码现在,我们经常在应用中引入几个库或框架。 译者:SlaneYang原文:https://raygun.com/javascript-debugging-tips 以更快的速度和更高的效率来调试JavaScript 熟悉工具可以让工具...

    CODING 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<