Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >编程篇(006)-请写出以下代码的执行结果

编程篇(006)-请写出以下代码的执行结果

作者头像
齐丶先丶森
发布于 2022-05-12 13:19:18
发布于 2022-05-12 13:19:18
26700
代码可运行
举报
文章被收录于专栏:前端面试秘籍前端面试秘籍
运行总次数:0
代码可运行
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
(function() {
    fn();
    var fn = function() {
        alert(1);
    }
    fn();
    function fn() {
        alert(2)
    }
})()

参考答案:

第一次弹出2,第二次弹出1

解析:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
// 变量提升之后的代码:
(function() {
    function fn() {
        alert(2)
    }
    var fn;
    fn(); // 弹出2
    fn = function() {
        alert(1);
    }
    fn(); // 弹出1
})()
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-09-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 前端面试秘籍 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
前端-JavaScript排坑指南
JavaScript总是给人以惊喜,学习不止,进步不断,今天继续补充JS容易搞错的几道笔试/面试题,为了秋招继续努力,欢迎一起为秋招努力的小伙伴共勉。
grain先森
2019/03/29
4410
一篇常做错的经典JS闭包面试题
可以用fn.name来判断,如果有name就是具名函数,如果没有name就是匿名函数。
达达前端
2019/12/24
4600
一篇常做错的经典JS闭包面试题
求职 | 听说集齐了这些Js题,笔试都不怕了呢!
1写在前面 一套JavaScript题目 前端工程师是互联网时代软件产品研发中不可缺少的一种专业研发角色。以前看过一套JavaScript题目,借花献佛拿出来分享一下,附带了自己的理解和答案。有争议的地方,欢迎大家指出和讨论。 下面可以前端笔试中的典型“坑”呢,快来看看吧! (左右滑动查看代码) 2题目详情 2.1   题目一 (function()  {        return typeof arguments;        }        ) (); 答案:“object” argum
用户1097444
2022/06/29
2500
求职 | 听说集齐了这些Js题,笔试都不怕了呢!
ES6知识点
从上述代码中我们可以发现,虽然变量还没有被声明,但是我们却可以使用这个未被声明的变量,这种情况就叫做提升,并且提升的是声明。
江拥羡橙
2023/12/18
1720
ES6知识点
【宠粉通道】叫我讲解的一道前端JS面试题-灵魂三问:prototype?类的prototype是什么?对象的proto是什么
每个函数就是一个对象(Function),函数对象都有一个子对象 prototype对象,类是以函数的形式来定义的。prototype表示该函数的原型,也表示一个类的成员的集合。
达达前端
2020/01/02
4320
【前端】JavaScript作用域与预解析:深入理解问题与解答
在 JavaScript 中,函数声明的提升优先于变量声明。这意味着函数会被完整地提升到作用域的顶部,并且在变量声明之前可以使用。但变量声明只会被提升声明,赋值操作仍然保留在原地。
CSDN-Z
2024/11/26
1170
【前端】JavaScript作用域与预解析:深入理解问题与解答
JS学习笔记
区别:一:js的数据类型和java类似。只不过js中的数据类型number将java中的int,double,float整合了。 二:js中可以不用声明变量类型。变量不声明数据类型的话,那么他的类型取决于当前的值是什么数据类型。举例:
北洋
2021/12/08
3960
【前端】JavaScript 变量声明与函数提升例题分析:深入理解变量提升、作用域链与函数调用
在 JavaScript 执行代码之前,会先进行 预解析 ,把变量和函数声明提升到当前作用域的顶部。在这段代码中,我们有两个作用域需要考虑: 全局作用域 和 函数作用域 fn 。
CSDN-Z
2024/11/26
1110
【前端】JavaScript 变量声明与函数提升例题分析:深入理解变量提升、作用域链与函数调用
全是原题?东吴金科2024量化研究员笔试0402
限时60min,4个概率和数理统计题、一个编程题,实则可以看为两个编程题。如果这些题是第一次做的话,还是比较难或者难以下手的,尤其是编程题考了动态规划,难度为力扣hard级别,对标互联网大厂笔试。但是做多了,就会发现基本都是经典题型,所以笔试前要好好准备,多刷绿宝书、红宝书,多刷LeeCode!
量化投资和人工智能公众号
2024/06/26
3080
全是原题?东吴金科2024量化研究员笔试0402
必知必会的JavaScript前端面试题篇(一),不看后悔!
1.函数调用模式:当一个函数不是一个对象的属性时,直接作为函数来调用时, 严格模式下指向 undefined, 非严格模式下,this 指向全局对象。
沉浸式趣谈
2024/03/13
1390
必知必会的JavaScript前端面试题篇(一),不看后悔!
编程篇(007)-请写出以下代码的执行结果
以上两个例子中,除了var aValue = e;这一句位置不同:例1位于外层匿名函数中、例2位于内层匿名函数中,其他部分完全相同。为什么结果不同?
齐丶先丶森
2022/05/12
3340
经典JS闭包面试题
大部分人都会做错的经典JS闭包面试题 目录 由工作中演变而来的面试题 JS中有几种函数 创建函数的几种方式 三个fun函数的关系是什么? 函数作用域链的问题 到底在调用哪个函数? 后话 由工作中演变而来的面试题 这是一个我工作当中的遇到的一个问题,似乎很有趣,就当做了一道题去面试,发现几乎没人能全部答对并说出原因,遂拿出来聊一聊吧。 先看题目代码: function fun(n,o) { console.log(o) return { fun:function(m){ return
逸鹏
2018/04/09
1.7K0
经典JS闭包面试题
选择篇(009)-下面代码的输出是什么
reduce函数接收4个参数: • total (累加器) • currentValue (当前值) • currentIndex (当前索引) • arr (源数组) reduce 函数的返回值将会分配给累加器,该返回值在数组的每个迭代中被记住,并最后成为最终的单个结果值。 reduce函数还有一个可选参数initialValue, 该参数将作为第一次调用回调函数时的第一个参数的值。如果没有提供initialValue , 则将使用数组中的第一个元素。 在上述例子, reduce方法接收的第一个参数(total)是 x, 第二个参数(currentValue)是 y。 在第一次调用时,累加器x为1 , 当 前 值'y'为 2 , 打印出累加器和当前值: 1 和 2。 在第二次调用时,我们的回调函数没有返回任何值,只是打印累加器的值和当前值。如果函数没有返回值,则默认返回undefined。在下一次调用时,累加器为undefined , 当前值为'3',因此undefined和3被打印出来。 在第三次调用时,回调函数依然没有返回值。累加器再次为 undefined , 当前值为“4”。undefined 和 4 被打印出来。 如果改造成以下代码:
齐丶先丶森
2022/05/12
2410
选择篇(009)-下面代码的输出是什么
前端经典面试题(60道前端面试题包含JS、CSS、React、网络、浏览器、程序题等)
原文地址:https://mp.weixin.qq.com/s/PTSaytcf3xgOp6C9l3Pvjw
前端迷
2021/06/24
1.1K0
2016.05 第三周 群问题分享
HTML+CSS 一个div里面有个img标签,div的高度由img撑开;img的兄弟级有个div要使内层div的高度等于外层div的高度,除了用JS实现,还能怎么实现? 2016.05.16~2016.06.20 核心概念 flex、position、display 参考答案 结构: <div class="wrap"> <img src="h5_course.jpg" alt="HTML5学堂"> <div>HTML5</div> </div> 设置多栏多列布局display
HTML5学堂
2018/03/13
1.1K0
2022高频前端面试题合集之JavaScript篇(上)
解析:该题主要考察就是对 js 中的继承是否了解,以及常见的继承的形式有哪些。最常用的继承就是「组合继承」(伪经典继承)和圣杯模式继承。下面附上 js 中这两种继承模式的详细解析。
程序员法医
2022/12/20
1.2K0
2022高频前端面试题合集之JavaScript篇(上)
JavaScript的预编译过程
在全局环境中会生成一个 GO对象 (Global Object),还是按照上面的四步执行。
FinGet
2019/06/28
4130
JavaScript的预编译过程
一文带你弄懂JavaScript中的变量提升
JavaScript是单线程语言,所以执行肯定是按顺序执行。但是并不是逐行的分析和执行,而是一段一段地分析执行,会先进行编译阶段然后才是执行阶段。在编译阶段阶段,代码真正执行前的几毫秒,会检测到所有的变量和函数声明,所有这些函数和变量声明都被添加到名为Lexical Environment的JavaScript数据结构内的内存中。所以这些变量和函数能在它们真正被声明之前使用。
是乃德也是Ned
2022/08/04
3510
JavaScript——ES6新增语法特性
ES的全称是ECMAScript,它是由ECMA国际标准化组织制定的一项脚本语言的标准化规范
岳泽以
2022/10/26
4310
JavaScript——ES6新增语法特性
第112天:javascript中函数预解析和执行阶段
关于javascript中的函数:    1、预解析:把所有的函数定义提前,所有的变量声明提前,变量的赋值不提前    2、执行 :从上到下执行,但有例外(setTimeout,setInterval,ajax中的回调函数,事件中的函数需要触发执行)
半指温柔乐
2018/09/11
7290
推荐阅读
相关推荐
前端-JavaScript排坑指南
更多 >
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验