javascript - 'if/else' vs 'if' 的性能和可读性?

标签 javascript

<分区>

我最近开始使用代码段 2 而不是代码段 1 来进行基本选择语句。这似乎有点不合常规,所以我想知道是否存在性能差异,或者一个看起来比另一个更具可读性。

片段 1

function foo() {
    if(case1){
        //...
    } else if (case2) {
        //...
    } else if (case3) {
        //...
    } else{
        // catch other cases
    }
}

片段 2

function foo() {
    if(case1){
        //...
        return;
    }
    if(case2){
        //...
        return;
    }
    if(case3){
        //...
        return;
    }
    // catch other cases
}

最佳答案

您的代码段是同一回事。但即使我返回,我也会使用 elseif。这让我觉得那些 if 语句是相关的,有助于我提高可读性。

if ... else 也有助于提高性能,比方说,当您对同一个变量进行 if 时。如果前一个条件成功,为什么要测试条件? elseif 它不会重试。

这是一个设计问题。 这取决于您想要实现的目标,因此没有绝对的最佳方法。这完全取决于您需要如何退出包含 if 的代码块。

关于javascript - 'if/else' vs 'if' 的性能和可读性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17429893/

相关文章:

javascript - 如何根据两个属性对对象数组进行排序并检查范围是否连续?

javascript - 在 CSS 创建的图像上使用 DatePickers JQuery 方法来填充输入字段

javascript - 从 dgrid 内部的 dijit 复选框更改函数中调用父小部件函数

javascript - 如何拖放 div 更改 HTML 5 中的 css left 和 top 属性?

javascript - Angular .js : Is it not possible to assign properties of a resolved promise to $scope?

javascript - 用于选择国家的下拉菜单,然后是州,然后是地区

javascript - 如何找到刷新页面的代码?

javascript - 使用javascript的动态字典

javascript - 从每个数组对象中读取一个字段

javascript - Bootstrap 选项卡问题/Jquery 删除所有子元素上的 .active 类