Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么if语句优先于switch语句?_Javascript - Fatal编程技术网

Javascript 为什么if语句优先于switch语句?

Javascript 为什么if语句优先于switch语句?,javascript,Javascript,我对从头开始编程相当陌生,但有阅读和修复代码的经验。通过实际的课程和学习,我注意到IF语句比Switch语句有更多的实现。区别是什么?为什么学习材料总是缺少if语句 我看过一些关于stackoverflow的不同文章,但它们是针对特定问题的,这在从头开始编写脚本时更为重要。像if和switch这样的编程结构有它们的优点。我们在很多语言中使用if,而不是if。但对于多条件检查,开关更容易选择。if语句 允许检查多个状态,这通常是必要的 允许在比switch语句少得多的代码中检查单个布尔值 提供通

我对从头开始编程相当陌生,但有阅读和修复代码的经验。通过实际的课程和学习,我注意到IF语句比Switch语句有更多的实现。区别是什么?为什么学习材料总是缺少if语句


我看过一些关于stackoverflow的不同文章,但它们是针对特定问题的,这在从头开始编写脚本时更为重要。

像if和switch这样的编程结构有它们的优点。我们在很多语言中使用if,而不是if。但对于多条件检查,开关更容易选择。

if语句

  • 允许检查多个状态,这通常是必要的
  • 允许在比switch语句少得多的代码中检查单个布尔值
  • 提供通常更容易遵循的逻辑,尤其是嵌套时,比开关更容易遵循
开关语句

  • 允许轻松检查具有多种可能变化的一种状态。当有3+个可能的状态时,它最有用
  • 允许轻松添加和处理新的可能状态。这对于应用程序的未来扩展非常有用。例如,如果API将来可能包含更多路由
  • 允许以相同的方式或非常接近的方式对状态进行轻松分组。这也是非常清晰和易于调整的

它们都有各自的优点,但是当类似于if的语句可用时,使用switch语句更合适

作为一名开发人员,您为工作选择了正确的工具,如果某件东西的性能更好或更高,更清晰或更清晰,并且允许更少的代码,则通常会使用这种工具

还值得注意的是,在某些情况下,您可以在交换机中使用if语句。没有什么可以说明你必须使用其中一种——这一切都基于组织、代码可读性和实用性


作为一个旁注,自从你提到课程作业

看,处于发展过程中和在野外是截然不同的动物。我个人见过糟糕的大学课程,这些课程实际上只教有抱负的开发人员if…else if…else控制语句。我最近看到了一个研究生代码,字面意思是(我的意思是字面意思)几十条这样的语句,而一个简单的数组检查就足够了,可以节省时间,超过一百行代码,以及项目中其他人(即我)的理智

学校就是学校。你按照他们的意愿做工作,即使这不是最实际或最有效的,但是当你进入这个领域时,要记住,通常有更好的方法

我之所以提到这一点,是因为你可能看到了一些让你说“但我为什么不做X呢?”。我来告诉你,你可能是对的,所以抬起头来。你可以自己研究一下,问问那些有更多经验的人好奇心是优秀开发人员的标志,当你进入该领域时,你将更有能力,更有价值

因为如果你考虑逻辑的话(
if
)听起来更好

if(life_is_easy){
  just_sleep_you_will_succeed()
}else{
  struggle_for_success()
}
但是,如果您需要进行长时间的变量测试,则最好选择开关。

您可能会注意到,上面的句子还包含了IF to form logical consultation。

我认为它更受欢迎。