博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
一道JS面试题引发的血案
阅读量:6837 次
发布时间:2019-06-26

本文共 705 字,大约阅读时间需要 2 分钟。

逗号表达式

刚入职新公司,属于公司萌新一枚,一天下午对着屏幕看代码架构时。

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。

作者:以乐之名
本文原创,有不当的地方欢迎指出。转载请指明出处。
你可能感兴趣的文章
推荐一些工具类网站
查看>>
Visual Paradigm 教程[UML]:如何在序列图中应用消息编号?
查看>>
iOS自定义简易刷新视图(仿MJRefresh)
查看>>
你需要知道的Android View的布局
查看>>
vuex源码分析
查看>>
用vue优雅地编写UI组件的几条指导原则
查看>>
关于element-ui 中使用Notice组件(Message、MessageBox、Notification)所遇到的坑
查看>>
常用命令
查看>>
「译」在JavaScript中将值转换为字符串的5种方法
查看>>
Java maven的 pom.xml配置文件中使用全局变量配置版本号
查看>>
Rabbitmq安装
查看>>
2016年3月9日作业
查看>>
tomcat 部署站点时遇到的部分问题以及解决方案
查看>>
excel两个下拉框相互关联
查看>>
mysql出现多线程操作同一个表的情况,应该怎么办?
查看>>
springmvc 将post转换为delete,put
查看>>
第二届清华大学项目管理精英训练营【敏捷个人】分享
查看>>
Centos 安装 Solr
查看>>
Android Toast自己定义Toast例子
查看>>
bash shell实现二进制与十进制数的互转
查看>>