Javascript 个变量一次:性能与可读性

Javascript variables once : Performance vs Readability

我想知道 Javascript 与可读性的表现。我们过去常常在函数中声明只使用一次的变量,以使我们的代码尽可能具有可读性。

例如,我们有这段代码使用 npm 包 MySQL,它使用字符串和对象参数清理和执行查询:

function doSomething ( somethingId = null ) {
    if ( !somethingId ) return false
    const sql = "SELECT * FROM something WHERE somethingId = :somethingId"
    const params = { somethingId }
    return db.query(sql, params)
}

所以我想缩小代码以获得这样的东西:

function doSomething ( somethingId = null ) {
    return ( !somethingId )
        ? false
        : db.query("SELECT * FROM something WHERE somethingId = :somethingId", { somethingId })
}

关键是我想知道这是否会改变性能?因为我认为声明变量是有代价的,绕过它会更快……但是我们会失去可读性……

你怎么看?

您几乎应该始终优先考虑可读性,因为您所描述的性能提升几乎微不足道。

可读性的问题是人们太容易把注意力集中在细节上,比如额外的变量、空格等,而在这个过程中却忽略了房间里的大象。可读性只是代码质量的一个组成部分。正如 Thom Holwerda 所说,质量可以表示为与 WTFs/minute:

的数量成反比