假設我有一個數組test
,該數組通過GM_setValue('test', []);
存儲,當腳本第一次運行時確保它在那裏。無法通過Firefox中的密鑰獲取存儲的對象值
現在,如果我是通過var test = GM_getValue('test');
分配局部變量test
這一點,在某些時候在腳本推一個新的對象,像這樣test.push({id: '...'});
,然後在其上做這個GM_setValue('test', test);
存儲陣列會是這樣[{ id: '...' }]
保存。
現在我需要從腳本中稍後在數組中的對象中獲取鍵值id
,因此我只需執行test[0]['id']
即可。但是,這似乎返回undefined。
Alrighty,很可能它沒有存儲出於某種原因對象,所以這裏是我會做:
console.log(test);
console.log(test[0]);
console.log(test[0]['id']);
令人驚訝的是,test
返回一個包含對象,並依次編號的陣列,test[0]
返回包含具有正確值的id的對象,但test[0]['id']
仍會返回undefined。
這與Tampermonkey的Chrome完美搭配,但是當腳本在Firefox上運行Greasemonkey時出現問題。這個問題可能是什麼?
噢,我不是個聰明人。我甚至也翻了幾頁瀏覽該頁面。我很驚訝我還沒有死於喝過期牛奶。謝謝! – AlphaDelta