javascript - IF 条件的书写顺序正确吗?

标签 javascript php

我意识到这是一个非常简单和基本的问题。据我所知,在大多数编程语言中,当然是我熟悉的所有编程语言中,您可以按任何顺序放置条件。然而,我想知道将它们“倒退”的理由是什么。

为了解释一下,这里有两个例子:

if (x === 10) {}
if (10 === x) {}

我总是用第一种方式来做,而且几乎所有我见过的东西都是用第一种方式做的。然而,我经常看到第二种写法。除此之外,也许有问题的编码器有诵读困难之类的,我想知道第二个(我称之为“向后”)顺序是否有任何特殊原因?

我问的主要原因是,我从未见过任何人使用第二种做得很差的样式的代码。它总是优秀的代码,这让我想知道其中是否有一些我根本不知道的东西。

提前致谢!

最佳答案

这称为 Yoda 语法或 Yoda 条件。这主要是风格问题;然而,它的支持者使用它来避免条件语句中的赋值操作。例如:在 if 语句中,如果不小心使用了一个等号而不是两个,这很可能是一个错误,并且在调试时很容易被忽视。

if( x = 7 )...

在本例中,x 被赋予值 7。

if( 7 = x )...

在本例中,这是一个编译错误。

以下是更多详细信息:https://en.wikipedia.org/wiki/Yoda_conditions

关于javascript - IF 条件的书写顺序正确吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43147051/

相关文章:

php - 从 php 的 sql 查询中获取的行数

PHP - if 语句臃肿

php - 导出的数据库为空

php - 使用javascript更改php包含路径

javascript - 一旦实例化/绘制到 Canvas ,移除/删除函数对象的最佳方法是什么?

javascript - 使用逗号运算符链接多个函数定义

javascript - 用户控制按钮 Action

javascript - ng-model 不适用于 md-menu angularjs Material

javascript - 使用 ES6 语法代替 `for` 循环

php - 依赖下拉列表显示值 ID,而不是在提交后显示名称