Javascript对象属性未定义(GM_getValue()、GM_listValues()、Greasemonkey、Tampermonkey)

Javascript对象属性未定义(GM_getValue()、GM_listValues()、Greasemonkey、Tampermonkey),javascript,greasemonkey,javascript-objects,tampermonkey,Javascript,Greasemonkey,Javascript Objects,Tampermonkey,这可能很简单,我不知道,但我正在尝试从Tampermonkey(Chrome基本上是Greasemonkey)返回的对象创建一个字符串GM_getValue()function 最后的代码如下所示 //Call GM_listValues() to get keys of all stored values var keys = GM_listValues(); //Code to create CSV string out of first 10 records var csvString

这可能很简单,我不知道,但我正在尝试从Tampermonkey(Chrome基本上是Greasemonkey)返回的对象创建一个字符串
GM_getValue()
function

最后的代码如下所示

//Call GM_listValues() to get keys of all stored values
var keys = GM_listValues();

//Code to create CSV string out of first 10 records
var csvString = '';
for (j=0; j<10; ++j) {
    var temp = GM_getValue(keys[j]);

    csvString = csvString + '"' + temp.id + '"' + ",";
    csvString = csvString + '"' + temp.time + '"' + ",";
    csvString = csvString + '"' + temp.outcome + '"' + ",";
    csvString = csvString + '"' + temp.condition + '"' + ",";
    csvString = csvString + '"' + temp.wager + '"' + ",";
    csvString = csvString + '"' + temp.chance + '"' + ",";
    csvString = csvString + '"' + temp.profit + '"' + ",";
    csvString = csvString + '\n';
}

//Code to download CSV
var a         = document.createElement('a');
a.href        = 'data:attachment/csv,' +  encodeURIComponent(csvString);
a.target      = '_blank';
a.download    = 'myFile.csv';

document.body.appendChild(a);
a.click();
//调用GM_listValues()获取所有存储值的键
var keys=GM_listValues();
//从前10条记录中创建CSV字符串的代码
var csvString='';

对于(j=0;j确保在文件顶部包含授权

// ==UserScript==
// @grant     GM_getValue
// @grant     GM_listValues
// ==/UserScript==