首页 > 其他分享 >【JS错题总结】作用域链问题

【JS错题总结】作用域链问题

时间:2023-06-14 20:56:23浏览次数:33  
标签:undefined 作用域 JS 错题 var name

作用域链

上面代码的输出是 GoodbyeJack ,因为执行到语句 typeof name === 'undefined'  的时候,函数会从内向外(作用域链)寻找该变量,从 语句 var  name; 找到该变量的定义,该变量此时的值为 undefined。自执行函数解析和执行一起完成,自己有的不会再向上查找。

var name ='zhangsan';

(function f() {
    var name
    console.log(name) // undefined
    console.log(typeof name) // 'undefined'
})()

 

标签:undefined,作用域,JS,错题,var,name
From: https://www.cnblogs.com/zjy4fun/p/17481323.html

相关文章

  • 【JS错题总结】node中的微任务
    答案是n1n2p1p2 原因:node中的微任务包含两部分:1.process.nextTick()注册的回调(nextTicktaskqueue)2.promise.then()注册的回调(promise taskqueue) node在执行微任务时,会优先执行nextTicktaskqueue中的任务,执行完之后接着执行promisetaskqueue......
  • SQL中json解析技巧
    比如字段var1,值是'{"a":{"b":{"c":1,"d":2}}}'大家都知道用get_json_object(var1,'$.a')可以得到'{"b":{"c":1,"d":2}}',如果要继续下挖,不需要get_json_object函数一直套可以直接按这个写法:get_json_object......
  • js把string转化为json
    //声明变量名为a的对象vara={a:1,b:2,c:"wangwei"};//将JSON对象转化为JSON字符,赋值给变量letstrResult=JSON.stringify(a)//查看变量strResult是什么类型typeofstrResult//'string'//JSON.parse()用于从一个字符串中解析出json对象letjsonResult=JSON.parse(str......
  • JS排序:插入排序 冒泡排序 选择排序
    1.插入排序 1letarr=[30,5,7,60,22,18,29]2letfn=arr=>{3for(letj=1;j<arr.length;j++){4letcurrent=arr[j]5letpreIdx=j-16while(preIdx>=0&&arr[preIdx]>......
  • JS中, Set为什么是带键的集合?
    起因这两天写了个LRUCache,用到了Set做AllowList,来判断API是否应该被缓存.查MDN时,发现Set被归类在KeyedCollection中.下意识中,总认为Set属于Array的一类,应该是IndexedCollection.感觉奇怪,所以多查了查文档过程首先,看了下MDN的文档、ECMA的文档.都没有明确......
  • JS逆向实战18——猿人学第八题 验证码 - 图文点选
    声明本文章中所有内容仅供学习交流,抓包内容、敏感网址、数据接口均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请联系我立即删除!网站https://match.yuanrenxue.cn/match/8网站分析首先进去就看到是如此复杂的文字验证码。我们首......
  • npm install报错[email protected] postinstall: `node scripts/build.js`
    [email protected]: nodescripts/build.js解决方法:npmconfigsetsass_binary_site=https://npm.taobao.org/mirrors/node-sassnpminstall  ......
  • [nodejs] __dirname is not defined in ES module scope
    原因:CommonJS中提供的全局变量如require, exports, module.exports, __filename, __dirname等,在ESModules环境中均是不可用的,require, exports, module.exports在ESModules中基本对应着import,export,exportdefault。解决:import{dirname}from"node:path......
  • web页面中导出Excel (方法二) 前端easyui-datagrid导出Excel 使用 datagrid-export.js
    这个示例使用 前端easyui-datagrid 后端php 前端easyui-datagrid导出Excel使用了datagrid-export.js datagrid-export.js文件可自行搜索下载优点:查询结果显示在datagrid中(不能分页),前端直接下载不用回后端,效率高速度快。缺点:查询结果不能分页,必须显示全部内容,显......
  • js函数的概念
    @TOCjs函数的概念对于js来说,函数就是把任意一段代码放在一个盒子里面在我想要让这段代码执行的时候,直接执行这个盒子里面的代码就行先看一段代码//这个是我们以前写的一段代码for(vari=0;i<10;i++){ console.log(i)}//函数,这个{}就是那个“盒子”functionfn(){......