首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏憧憬博客分享

    简单学习Es6中的this指向

    前言 对于一个前端初学者来说,this的指向是一个必须要掌握的知识点,尤其是es6之后的this指向更加变得飘忽不定,我们今天就来了解一下各种情况下this的指向。 console.log(this)//this指向window } fun() 为什么在函数体内this也是指向的window,我们可以看到是在全局调用的fun函数,当我们调用的时候会进行默认绑定 console.log(this)//obj对象 } } } Person.obj.sex()//调用penson对象中的obj对象的sex方法 嵌套对象的时候this的指向同样是谁调用指向6.es6中的箭头函数this指向 var obj = { name:'张三', say:()=>{ console.log(this) ${this.name},i am ${age} years old`)//es6语法模板字符串 } } var obj = { name:'李四' } 直接调用 Person.say(

    58610发布于 2020-07-20
  • 来自专栏web秀

    ES6箭头函数中this指向谁?

    ES6箭头函数中this (1)默认指向定义它时,所处上下文的对象的this指向。 即ES6箭头函数里this的指向就是上下文里对象this指向,偶尔没有上下文对象,this就指向window (2)即使是call,apply,bind等方法也不能改变箭头函数this的指向 一些实例加深印象 (1)hello是全局函数,没有直接调用它的对象,也没有使用严格模式,this指向window function hello() { console.log(this); // window obj,setTimeout箭头函数,this指向最近的函数的this指向,即也是obj const obj = { num: 10, hello: function () { console.log perimeter是箭头函数,this应该指向上下文函数this的指向,这里上下文没有函数对象,就默认为window,而window里面没有radius这个属性,就返回为NaN。

    2K10发布于 2020-08-19
  • 来自专栏XC's Blog 日常笔记

    This指向与改变This指向

    This指向与改变This指向 This 的指向 在 ES5 中,其实 this 的指向,始终坚持一个原理:this 永远指向最后调用它的那个对象。 所以 this 指向的也就是 window。 this 的指向并不是在创建的时候就可以确定的,在 es5 中,永远是this 永远指向最后调用它的那个对象。 改变 this 的指向 改变 this 的指向我总结有以下几种方法: 使用 ES6 的箭头函数 在函数内部使用 _this = this 使用 apply、call、bind new 实例化一个对象 例 this.func1() },100); } }; a.func2() // Cherry 在函数内部使用 _this = this 如果不使用 ES6, 我们将 this(指向变量 a) 赋值给一个变量 _this,这样,在 func2 中我们使用 _this 就是指向对象 a 了。

    1.8K20编辑于 2023-02-27
  • 来自专栏前端小歌谣

    this指向

    前言 我是歌谣 最好的种树是十年前 其次是现在 今天继续给大家带来的是this指向的讲解 环境配置 npm init -y yarn add vite -D 修改page.json配置端口

    55330编辑于 2023-10-24
  • 来自专栏全栈自学笔记

    this指向

    1.this 1.1函数内部的this指向 这些 this 的指向,是当我们调用函数的时候确定的。调用方式的不同决定了this 的指向不同 一般指向我们的调用者. ? 1.2改变函数内部 this 指向 JavaScript 为我们专门提供了一些函数方法来帮我们更优雅的处理函数内部 this 的指向问题,常用的有 bind()、 call()、apply() 三种方法 简单理解为调用函数的方式,但是它可以改变函数的 this 指向。 this指向 不同点: call 和 apply 会调用函数, 并且改变函数内部this指向. 比如借助于数学对象实现数组最大值最小值 bind 不调用函数,但是还想改变this指向. 比如改变定时器内部的this指向.

    1.6K10发布于 2020-10-27
  • 来自专栏前端学习文档

    this 指向

    source=cloudtencent this 指向分为两种情况,一种是普通函数中使用的 this,另外一种是箭头函数中的 this。 普通函数 this 指向调用者。 当我们执行 div.onclick() 的时候,调用者就是 div ,所以 this 指向它。 箭头函数 这里就不用看谁是调用者了,而是看它定义时所在的环境(作用域)。 箭头函数本身不存在 this,所以它的 this 指向上一层作用域所在的对象。 sayHi 所在的对象 person,所以无论是谁调用了 fn ,this 始终指向 person。 改变 this 指向 通过 call() apply() bind() 可以改变 this 指向

    1.3K00编辑于 2023-05-24
  • 来自专栏h5学习笔记

    this指向

    1.函数内部的this指向 这些 this 的指向,是当我们调用函数的时候确定的。调用方式的不同决定了this 的指向不同 一般指向我们的调用者. ? 2.改变函数内部 this 指向 JavaScript为我们专门提供了一些函数方法来帮我们更优雅的处理函数内部 this的指向问题,常用的有bind()、call()、apply()三种方法。 简单理解为调用函数的方式,但是它可以改变函数的 this 指向。 , 并且改变函数内部this指向. 比如借助于数学对象实现数组最大值最小值 bind 不调用函数,但是还想改变this指向. 比如改变定时器内部的this指向.

    1.4K10发布于 2020-10-26
  • 来自专栏持续学习

    this 指向(一)

    有人说「箭头函数里面的 this 指向箭头函数外面的 this」,这很傻,因为箭头函数内外 this 就是同一个东西,并不存在什么指向指向

    1.4K10编辑于 2022-01-18
  • 来自专栏用户7737280的专栏

    对象this指向箭头函数的this指向定义

    可以看出普通函数this指向了本身对象,而箭头函数this往外层找指向了window,因为window没有name字段所以没有输出。 箭头函数使this从“动态”变成“静态”,实质是内部没有this指向,继承上级对象this指向箭头函数的this指向定义时外部作用域内的this指向,普通函数的this指向调用时根据上下文取确认.resp4 3.无法作为构造函数 箭头函数作为匿名函数,没有prototype,没有自己的this指向,因此不能使用new构造函数非对称加密的密钥不是一个,而是一对。

    1.8K40编辑于 2021-11-29
  • 来自专栏前端小歌谣

    关于this指向

    71620编辑于 2023-10-18
  • 来自专栏coding个人笔记

    this的指向

    This的指向问题一直是JavaScript的一大核心,很多人都是觉得了解了,但是又模模糊糊。简单概括就是,this的指向永远是指向调用这个this的对象。下面介绍几个本人理解的this指向问题。 var a = 10; console.log(this.a); alert(this.a); 这是最简单的this指向问题,console.log()和alert()是两个函数,是window的函数 var a = 10; window.console.log(this.a); window.alert(this.a); 所以调用函数的对象是window,this也就是指向window。 b: function () { console.log(this.a); } }; obj.b(); 可以看见,b方法是对象obj里面的方法,那么调用b方法的对象就是obj,这时的this指向就是指向 接下来就是改变this指向的两个方法,call和apply,两个都是改变this的指向,只是参数不同,两个方法的第一个参数都是想要改变this指向的对象,call除了第一个参数外,剩下的都是方法的参数,

    1.3K20发布于 2020-04-24
  • 来自专栏开源部署

    域名隐藏指向和非隐藏指向有何不同

    我们在注册一些免费域名或者使用多个域名的时候,经常会遇到域名指向的问题。域名指向有隐藏性和非隐藏性两种类型。 隐藏指向和非隐藏指向都可以将与名指向到客户指定的已经可以访问的网站,但是这两种指向方式还是存在不一样的地方。 域名指向有什么用? 例如您已经注册了yiqixue.net ,但是并没有使用这个域名建站,只希望这个域名指向到已经可以正常使用的一个网站的子目录,就可以使用域名指向的功能来实现。 域名隐藏指向和非隐藏指向有何不同? 例如域名 www.yiqixue.net  要指向到已经可以访问的 http://www.hcm602.cn 使用域名隐藏操作的结果: 在IE地址栏输入: https://www.cmhello.com

    4.5K30编辑于 2022-08-13
  • 来自专栏持续学习

    this 指向(二)

    如果要想把this的值从一个环境传到另一个,就要用call/apply/bind方法

    1.2K10编辑于 2022-01-19
  • 来自专栏人生代码

    再说 this 指向问题

    要知道 this 指向问题,需要知道函数调用栈,函数调用的位置。 baz 的调用位置 绑定规则 独立函数调用 function foo() { console.log(this.a) } var a = 10 foo() // 10 在本例子中 this 默认指向了 隐式绑定 非严格模式下,函数调用 this 指向调用者。 var a = "oops, global"; // a 是全局对象的属性 bar(); // "oops, global" 调用的位置是在全局对象上的,所以 this 指向了 window 一种更微妙 var obj = { a:2 }; var bar = bind( foo, obj ); var b = bar( 3 ); // 2 3 console.log( b ); // 5 es6

    1.1K10发布于 2021-05-08
  • 来自专栏高端IT

    你真的懂this指向

    先搞清楚一点,如果this在函数里面,那么它指向的是“函数执行后”的上一级调用对象。 var a="this is a"; function main() { console.log(this.a)//这里this指向window. } main()//这里相当于 o,因为你调用这个say是通过o.say()执行的,那自然指向就是对象o,这里再次强调一点,this的指向在函数创建的时候是决定不了的,在调用的时候才能决定,谁调用的就指向谁,一定要搞清楚这个。 :“maomin”,say1:function(){console.log(this.name);//maomin}}window.o.say1();// 上面几行代码和之前的代码几乎相似,为什么没有指向 window,这就回到了我刚开始说的,this如果在函数内,那么它指向的是该函数执行后的上一级调用对象。

    79920编辑于 2022-07-25
  • 来自专栏前端学习笔记

    函数内部的this指向

    2.this 2.1函数内部的this指向 这些 this 的指向,是当我们调用函数的时候确定的。调用方式的不同决定了this 的指向不同 一般指向我们的调用者. ? 2.2改变函数内部 this 指向 2.2.1 call方法 call()方法调用一个对象。简单理解为调用函数的方式,但是它可以改变函数的 this 指向 应用场景: 经常做继承. 简单理解为调用函数的方式,但是它可以改变函数的 this 指向。 2.2.4 call、apply、bind三者的异同 共同点 : 都可以改变this指向 不同点: call 和 apply 会调用函数, 并且改变函数内部this指向. 比如借助于数学对象实现数组最大值最小值 bind 不调用函数,但是还想改变this指向. 比如改变定时器内部的this指向.

    2.4K30发布于 2020-10-26
  • 来自专栏软件工程

    箭头函数和this指向

    const aaa = function () { } // 2.对象字面量中定义函数 const obj = { bbb() { } } // 3.ES6中的箭头函数

    1.7K10编辑于 2021-12-23
  • 来自专栏程序技术知识

    js中this指向问题

    函数中this指向对于一些开发者来说一直是一个比较头疼的问题,this在js中比较灵活,不同的情况指向不同,小shy总结出了函数调用的this指向的一些情况,供大家参考。 1. 默认绑定 function fn() { console.log(this); } fn(); 结果:this指向window对象 函数在被调用的时候,this会默认指向全局对象window function() { console.log(this); console.log(this.name); } }; obj.fn(); 结果: this指向 obj对象,this.name 即 obj.name 调用对象的方法时会出现隐式绑定,fn是在obj对象里的,obj调用fn,this就会指向obj对象。 ,所以fn函数调用this都指向了obj2对象,所以得出结果为小红。

    3.1K60编辑于 2022-05-11
  • 来自专栏一尾流莺学前端

    【面试题解】this 指向问题以及 ES6 模块化

    ---- 本系列面试题旨在学会相关知识点,从而轻松应对面试题的各种形式,本文讲解了 JavaScript 中 this 指向问题以及模块化。 其次,箭头函数没有自己的 this, 它的 this 是继承而来; 默认指向在定义它时所处的对象(宿主对象),而不是执行时的对象。 app,指向vue实例 this....... }, group1:()=>{ //ES6的箭头函数写法 ,箭头函数没有自己的this,它的this事继承来的, //指向在定义它时所处的宿主对象,在这里this指向window。 vue实例,这里的this指向window, //在严格模式下,this指向undefined ,要使用this,可以直接用app(即vue实例)。

    37720编辑于 2022-12-10
  • 来自专栏芯智讯

    美国再发“禁令”,矛头指向宁德时代、比亚迪等6家中企!

    据彭博社1月20日报道,美国国会将禁止国防部从中国的6家电池制造企业采购电池,这一规定将作为2023年12月通过的2024财年国防授权法案中的一部分实施。 据介绍,被禁的6家中国电池制造企业包括:宁德时代、比亚迪、远景能源、亿纬锂能、国轩高科、海辰储能等。不过,该禁令并不会立刻实施,而是将于2027年10月生效。 报道称,在全球十大电池供应商中,其中6家都是中国企业。 这6家中国电池制造企业合计市占率达63.7%。其中,仅宁德时代和比亚迪两家中企的市占率之和就已经过半,达53.1%。 显然,而中国企业在动力电池市场的领导地位正引起部分美国政客的关注。

    31110编辑于 2024-01-23
领券