我正在尝试读取一个 JSON 数组。每次我尝试通过像这样传递 JSON 对象键来读取数组/值时-
json[key]
它显示 Eslint 错误-
[eslint] Generic Object Injection Sink (security/detect-object-injection)
我知道这是一个安全警告,因为 key 可能不存在。但是我该如何解决这个警告呢?有没有更简单的方法来读取 Json 对象。我的计划是将“key”传递给函数,并根据key读取json。
最佳答案
您正在搜索 ES lint 错误修复:
这是它的语法
json [`${key}`]
例子:
const obj = {
eventName: 'Music event',
landingPic: 'landing.jpg',
eventPic0: 'pic0.jpg',
eventPic1: 'pic1.jpg',
eventPic2: 'pic2.jpg',
eventPic3: 'pic3.jpg',
artist: 'Elie'
};
// array of keys which need to be read
const arrayOfKey = ['landingPic', 'eventPic0', 'eventPic1', 'eventPic2', 'eventPic3'];
// let's read the value by a key in array
arrayOfKey.forEach( key => {
const value = obj[`${key}`];
console.log(value);
});
关于javascript - 如何解决 eslint "Generic Object Injection Sink"错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51273469/