【发布时间】:2020-05-14 00:51:49
【问题描述】:
希望这不是太哲学化,但它有助于帮助我理解 Javascript 及其约定。
为什么 Switch/Case 语法看起来与 JavaScript 的其他部分如此不同?
具体来说,我说的是冒号、缩进和break 关键字的使用。
其他地方也有吗?
它确实看起来很像 python。
当您使用使用冒号来定义类型的 TypeScript 时,它也会变得更加混乱。
而不是这个:
switch(foo){
case 'bar':
//do something
break;
case 'bizz':
//do something
break;
default:
//do something else
break;
}
我觉得应该这样写:
switch(foo){
case('bar'){
//do something
}
case('bizz'){
//do something
}
default{ //or even an 'else'
//do something else
}
}
【问题讨论】:
-
它几乎是直接从C syntax for switch statements 提升而来的,主要区别在于在C 中你只能在常量表达式上使用
switch。它与 Python 无关,它甚至没有 具有switch语句。你提出的语法看起来不错,但他们目前不会改变它(大约 25 年)。 -
另外我假设你的意思是
case('bar'), -
你的想法是函数的定义,我不确定但整个语言使用相同的 switch 语法,解释器或编译器在阅读代码时必须确切知道它是什么,而你的想法是函数定义,他们有定义功能或开关块。
标签: javascript typescript syntax