CodeQL 文档

忽略纯数组方法的结果

ID: js/ignore-array-result
Kind: problem
Security severity: 
Severity: warning
Precision: high
Tags:
   - maintainability
   - correctness
Query suites:
   - javascript-security-and-quality.qls

点击查看 CodeQL 仓库中的查询

concatjoinslice 方法是纯方法,不会修改任何输入或方法调用的数组。因此,忽略对这些方法之一的调用的返回值通常是一个错误。

建议

使用对 concatjoinslice 的调用的返回值。

示例

以下示例定义了一个函数 extend。该函数使用 concat 方法向 arr 数组添加元素。但是,由于忽略了 concat 的返回值,因此 extend 函数没有效果。

var arr = [1,2,3];

function extend(others) {
	arr.concat(others);
}

将对 concat 的调用的返回值分配给 arr 变量可以修复该错误。

var arr = [1,2,3];

function extend(others) {
	arr = arr.concat(others);
}

参考资料

  • ©GitHub, Inc.
  • 条款
  • 隐私