分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 教程案例

js 中this到底指向哪里?

发布时间:2023-09-06 02:34责任编辑:郭大石关键词:js

其实js的this指向很简单。我们记住下面3种情况。

  1. this 指向的是浏览器中的window.代码如下:
    function fn(){ ?this.name=‘yangkun‘; ?this.age=28; ???}

    当我们执行fn()的时候,这个普通函数中的this指向到底是什么?答案就是指向的是浏览器中的window.(这里说明,这里实在浏览器下,如果是node环境不是)。

  2. 如果这个时候我们对上面的函数进行进一步操作:
    function fn(){ ?this.name=‘yangkun‘; ?this.age=28; ???}var f=new fn;
    console.log(f.name);//yangkun//这个时候貌似this指向的是实例中的name值。

    fn类(这里使用了构造函数new方式生成,这个时候函数fn可以看做是一个类),生成了一个实例f ,其中f的name,就是类分配给实例f的私有属性值,这个时候this指向的就是f实例。

  3. 使用call,apply,bind:这些方法可以直接修改this的指向到任意的对象甚至变量。

综上所描述:1规律:如果在点语法前有谁,这个this就是谁。2 如果使用call,apply,bind这些方法可以改变this的指向性。

js 中this到底指向哪里?

原文地址:https://www.cnblogs.com/yangkun90/p/10474363.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved