一道JS面试题引发的血案

作者: 以乐之名 | 来源:发表于2018-04-09 08:20 被阅读109次
逗号表达式

刚入职新公司,属于公司萌新一枚,一天下午对着屏幕看代码架构时。
BI项目组长给我看了一道面试别人的JS面试题。

虽然答对了,但把理由说错了,照样不及格。

话不多说,直接上题:

var a = 1;
switch (a) {
    case 2:
        console.log(2)
    break;
    case 1, 2, 3:  // 这里case是对比几呢?
        console.log(1)
    break;
    default: 
    break;
}
// result:最后什么都不会输出

看完题如果答对并且知道理由的小伙伴,仅当加深印象;如果你也像我一样不明所以,请仔细往下看。

逗号表达式

表达式1,表达式2,表达式3,...... ,表达式n

逗号表达式的要领:

  1. 逗号表达式的运算过程为:从左往右逐个计算表达式
  2. 逗号表达式作为一个整体,它的值为最后一个表达式(也即表达式n)的值
  3. 逗号运算符的优先级别在所有运算符中最低

有了上述的概念,再回过头来看面试题就很清晰了。

打铁趁热,再来一道题来加深下理解。

var i, j, k;
for (i = 0, j = 0; i < 10, j < 6; i++, j++) {
    k = i+j;
}
console.log(k); 

// result:10

执行步骤如下表

i j k
0 0 0
1 1 2
2 2 4
3 3 6
4 4 8
5 5 10

一直埋头写代码,没用到的知识总是容易忘记,刚好碰到,索性做下笔记加深印象,努力学习知识,仅为装X。

作者:以乐之名
本文原创,有不当的地方欢迎指出。转载请指明出处。

相关文章

  • 前端知识 - 收藏集 - 掘金

    一道 JS 面试题所引发的 "血案",透过现象寻本质,再从本质看现象 - 前端 - 掘金觉得本人写的不算很烂的话,...

  • 一道Javascript面试题引发的血案

    文章首发于 szhshp的第三边境研究所 ,转载请注明 一道Javascript面试题引发的血案 先来看几道面试题...

  • 一道JS面试题引发的血案

    刚入职新公司,属于公司萌新一枚,一天下午对着屏幕看代码架构时。BI项目组长给我看了一道面试别人的JS面试题。 虽然...

  • 一道面试题引发的血案

    作为一名大学生,大部分人在入学的时候都会想加入社团或者学生组织。笔者也不例外。但是面试时各种奇奇怪怪的题目却经常让...

  • 一道面试题引发的“血案”

    前言 es6之前,js的作用域只有两种,全局作用域和函数作用域,没有像C和java那样的块级作用域,于是对于学了C...

  • 一道面试题引发的"血案"

    题目及答案: 此题涉及的知识点众多,包括变量定义提升、this指针指向、运算符优先级、原型、继承、全局变量污染、对...

  • 一道题引发的血案。

    看到这道题我莫名其妙开始思考: 山村地区父母催婚催生这个问题上,是不是由于他们的精神需求随着年龄的增长而增长,然而...

  • JS 小数精度引发的血案

    前言: 在找工作面试的时候,相信你偶尔会遇到一道经典的面试题,即: 都不用思考,你就能马上说出答案,肯定不等于啊,...

  • iOS土味儿讲义(一)--一个Button引发的血案

    iOS土味儿讲义(一)--一个Button引发的血案 iOS土味儿讲义(一)--一个Button引发的血案

  • 数据存储方式:一道面试题引发的血案

    转载请注明原创出处,谢谢! GitHub: @Ricco 由于面试的挫折,感悟众多,今天写我的第二道面试题。 面试...

网友评论

本文标题:一道JS面试题引发的血案

本文链接:https://www.haomeiwen.com/subject/fehmhftx.html