2015.12.17 HTML5真题练习

时间:2022-05-03
本文章向大家介绍2015.12.17 HTML5真题练习,主要内容包括HTML5真题【2015.12.16】答案解析、HTML5真题【2015.12.17】题目、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。

HTML5学堂:每天一道题,强壮程序员!今日主要涉及12.16日关于函数返回值的题目解答,以及一道涉及闭包的题目。

HTML5真题【2015.12.16】答案解析

12.16真题题目如下,最终输出的结果是多少?

<script>
(function f(f){
    return typeof f();
})(function(){ return 1; });
</script>

本题目的答案是:返回的内容为 —— "number"。

首先我们定义了一个函数,然后立即运行了这个功能函数。还记得匿名函数的执行方法吗?——> "(function(){})();",此处我们也是通过同样的方法,让上面的那个函数立即执行。之后我们向这个函数中传入了一个参数,在f这个功能函数当中,有一个名为f的参数,但是这个f和函数的f不是同一个意思,换句话说,可以换为如下的代码:

<script>
(function f(f2){
    return typeof f2();
})(function(){ return 1; });
</script>

看如上的代码,应该就比最初的代码简单一些了,f这个函数运行的结果是f2函数运行结果的数据类型(typeof)。f2这个函数其实就是我们最初传入的那个函数——("function(){return: 1;}")运行的结果是1,typeof 1,自然就是"number"了。

HTML5真题【2015.12.17】题目

<script>
var fn = function(i){
    return function(){
        return i++;
    }
}(10);
var a = fn();
var b = fn();
console.log(a);
console.log(b);
</script>

关于每日代码练习题的答案和解析,我们会在明日文章当中,发布相关答案以及基本原理。(PS:周六日不发布题目)