为什么 eslint 认为这个对象永远不会被重新分配? (首选常量)

2024-03-16

我正在使用 eslint 4.17.0,它报告了一个问题:号码永远不会重新分配,但我正在重新分配它。有人可以解释为什么在这种情况下我需要使用 const 吗?

let test = {
    'number': 1,
    'string': 'asd',
};
test.number = 99;

console.log(test.number);
// output: 99
{
    "parser": "babel-eslint",
    "env": {
        "browser": true
    },
    "extends": [
        "google"
    ],
    "rules": {
        "prefer-const": 2

    },
    "parserOptions": {
        "ecmaVersion": 6,
        "sourceType": "module"
    }
}
[eslint] 'test' is never reassigned. Use 'const' insted. (prefer-const)

ES6 const 并不表示值是“常量”或不可变的。 A const 值肯定可以改变。以下内容完全有效 不抛出异常的 ES6 代码。

const foo = {};
foo.bar = 42;
console.log(foo.bar);
// → 42

就您而言,如果您知道要更改属性,请尝试使用 let。

看看这里:https://mathiasbynens.be/notes/es6-const https://mathiasbynens.be/notes/es6-const

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么 eslint 认为这个对象永远不会被重新分配? (首选常量) 的相关文章

随机推荐