假设我第一次运行脚本时通过test
存储了一个数组GM_setValue('test', []);
,以确保它在那里。
现在,如果我要通过test
将局部变量var test = GM_getValue('test');
分配给此,请在脚本中的某个位置推送一个新对象,如test.push({id: '...'});
,然后通过执行操作保存它这个GM_setValue('test', test);
存储的数组将是[{ id: '...' }]
。
现在我需要在脚本中稍后从数组中的对象获取值id
,因此我只需执行此操作test[0]['id']
。但是,这似乎返回 undefined 。
好的,它可能不是出于某种原因存储对象,所以这就是我要做的事情:
console.log(test);
console.log(test[0]);
console.log(test[0]['id']);
令人惊讶的是,test
返回一个包含该对象的数组,而id又test[0]
返回包含具有正确值的id的Object,但是test[0]['id']
仍返回 undefined
这适用于使用Tampermonkey的Chrome,但是当脚本在带有Greasemonkey的Firefox上运行时会出现问题。问题可能是什么?