使用无返回值函数¶
ID: js/use-of-returnless-function
Kind: problem
Security severity:
Severity: warning
Precision: high
Tags:
- maintainability
- correctness
Query suites:
- javascript-security-and-quality.qls
不返回表达式的 JavaScript 函数将隐式返回undefined
。从这样的函数使用隐式返回值本身不是错误,但它是一种模式,表明发生了一些误解。
建议¶
不要使用不返回表达式的函数的返回值。
示例¶
在下面的示例中,函数renderText
用于通过副作用渲染文本,并且该函数不返回表达式。但是,程序员仍然使用renderText
的返回值,就好像该函数返回了一个表达式一样,这显然是一个错误。
var stage = require("./stage")
function renderText(text, id) {
document.getElementById(id).innerText = text;
}
var text = renderText("Two households, both alike in dignity", "scene");
stage.show(text);
可以通过删除对renderText
返回的值的使用,或者通过更改renderText
函数以返回表达式来修复该程序。
参考¶
Mozilla 开发者网络:Return.