在JavaScript中this为开发者提供了函数调用非常简洁的表达方式,但是关于Javascript中的this指向问题,我们经常听到的回答就是谁调用就指向谁

实际的面试中的面试题中可以试试看能领的清谁是谁吗?

用这种方式回答面试官有关this的问题。请自行脑补后期画面。

为了彻底搞懂Javascript中的this问题,这次我们从根源中进行分析,深入浅出。希望达到的效果就是工作中使用不含糊,面试中回答问题够透彻。

开始!

谁?

this: 这个,这,这样。

单从翻译来看,this指向自身。从代码呢?

var name = "剑大瑞"
function foo () {var name = "剑小瑞"console.log(this.name)
}
foo() // ”剑大瑞“

显然从结果来看,this并没有指向自己foo。而是Window。

那this指向宿主环境吗?看代码

var name = "剑大瑞"
function foo () {var name = "剑小瑞"console.log(this.name)
}
var obj = {name: "剑骚瑞",foo: foo
}
var baz = obj.foo baz() // ”剑大瑞“

显然没有

Javascript深入浅出之this相关推荐

  1. JavaScript深入浅出第2课:函数是一等公民是什么意思呢?

    摘要: 听起来很炫酷的一等公民是啥? <JavaScript深入浅出>系列: JavaScript深入浅出第1课:箭头函数中的this究竟是什么鬼? JavaScript深入浅出第2课:函 ...

  2. JavaScript深入浅出第5课:Chrome是如何成功的?

    摘要: Chrome改变世界. <JavaScript深入浅出>系列: JavaScript深入浅出第1课:箭头函数中的this究竟是什么鬼? JavaScript深入浅出第2课:函数是一 ...

  3. javascript深入浅出——学习笔记(六种数据类型和隐式转换)

    在慕课之前学过JS深入浅出,最近发现很多东西都记不太清楚了,再复习一遍好了,感觉这个课程真的超级棒的,做做笔记,再添加一些学习内容?随时补充 课程大纲 1.数据类型 2.表达式和运算符 3.语句 4. ...

  4. Javascript深入浅出

    出处:慕课网教学视频笔记 https://www.imooc.com/learn/277 书籍介绍: <javascript权威指南>https://developer.mozilla.o ...

  5. 8、JavaScript深入浅出——数据类型

    一.六种数据类型 Javascript是弱类型. 五种原始类型和一种对象类型: number String boolean null undefined Object 二.隐式转换 +与-的运算举例: ...

  6. JavaScript深入浅出第1课:箭头函数中的this究竟是什么鬼?

    摘要: 箭头函数极大地简化了this的取值规则. 普通函数与箭头函数 普通函数指的是用function定义的函数: var hello = function () {console.log(" ...

  7. Javascript深入浅出之闭包

    在面试过程中,各位童鞋经常会被问道这样的问题:"请描述下你对闭包的理解",或者在面试烤卷中会有关于闭包的选择.填空题.如果是前者,大可一句带过:"闭包就是一个函数有权访问 ...

  8. Javascript深入浅出理解----汤姆大叔博客(二)

    编写高质量JavaScript代码的基本要素 1)书写可维护代码 2)最小全局变量 JavaScript通过函数管理作用域.在函数内部声明的变量只在这个函数内部,函数外面不可用.另一方面,全局变量就是 ...

  9. 慕课网 javascript深入浅出编程练习

    任务 请在index.html文件中,编写arraysSimilar函数,实现判断传入的两个数组是否相似.具体需求: 1. 数组中的成员类型相同,顺序可以不同.例如[1, true] 与 [false ...

最新文章

  1. 【JUC并发编程09】读写锁
  2. 理解php反序列化漏洞
  3. Proteus常见电平状态
  4. QTP提供的编程接口实现对QTP操作
  5. pitstop插件使用说明_【学员分享】程序员效率神器,最常用VIM插件安装大全
  6. 动态ram依靠什么存储信息_处理器内存系统1(ROM,RAM,数据存储顺序)
  7. Execution failed for task ':app:mergeDebugResources
  8. ❤️DDOS攻击详解❤️——万物互联时代的巨大威胁!安全领域最棘手的问题之一
  9. php无重复字符的最长子串,无重复字符的最长字串问题
  10. matlab时频工具箱简介,matlab时频分析工具箱下载_matlab时频分析工具箱官方下载-太平洋下载中心...
  11. 一张动图,让你明白时域和频域的关系
  12. 简单了解计算机组成原理 -- CPU与操作系统
  13. VS修改项目解决方案名称
  14. 小学生四则运算考试系统Java
  15. 【全网详解】从0到1搭建双十一实时交易数据展示平台——Spark+Kafka构建实时分析系统
  16. 【Unity】TimeLine常见问题:如何实现人形角色动画的平滑切换
  17. contest1 CF70 BetaRound ooxxx ooxxx ooooo
  18. 面向大数据异构系统的神威并行存储系统
  19. 网页报503 service unavailable错误怎么解决
  20. 计算机学报杂志官网在线出版,计算机学报

热门文章

  1. 【产业互联网】源码资本眼中的产业互联网:连接赋能构建生态
  2. 厦门大学计算机科学与技术,计算机科学与技术博士培养-厦门大学计算机科学系...
  3. PowerShell自动加载账号密码
  4. 【Ubuntu系列】Ubuntu20.04系统下3060显卡驱动安装记录
  5. 【单片机笔记】运放电流检测实用电路
  6. 小程序之 一个方法中的值怎么传递到另一个方法中
  7. 登录页面(动态背景)
  8. 新特性:TabLayout动态添加条目
  9. 希腊字母书写以及发音,常用场景
  10. 2022江苏民丰农村商业银行社会招聘测试题及答案