我正在尝试定义这个数组:
Func<Task>
但是,我收到所有 postLists = [
[
[46276,76235,78128],
postLists[0][0].length,
1100
], [
[],
postLists[1][0].length,
0
]
];
行的未定义错误。
如何访问自己定义的数组?有没有办法相对选择一个项目而不参考其整个&#34;路径&#34;就像你对文件夹做的那样?
例如,在这种情况下,类似postLists[x][0].length
的内容将获得[0].length
的长度,或[46276,76235,78128]
(父级)会选择..[1]
。
postLists[1]
将保存数十万个整数,因此需要考虑性能
postLists[x][0]
是每隔几秒钟需要访问的原始长度,由于postLists[x][1]
的大小,它不能在不影响性能的情况下即时访问。
postLists[x][0]
是一个跟踪(和存储)已处理项目的索引,postLists[x][2]
postLists[0][2]
用于跳过已处理的1100个第一项。
我在Greasemonkey脚本中使用它,postLists中子数组的原因是我打算在同时运行的多个选项卡上使用该脚本。
脚本的开头设置如下:
1100
然后,每个函数都使用window.onkeydown = function(event) {
if (event.ctrlKey && event.altKey) {
switch(event.keyCode) {
case 49: activeList = postLists[0]; break; // 1
case 50: activeList = postLists[1]; break; // 2
case 51: activeList = postLists[2]; break; // 3
case 52: activeList = postLists[3]; break; // 4
case 70: // F
toggleScript = !toggleScript;
if (toggleScript) {
treatItem();
favObserver.observe(topNotice, {attributes: false, childList: true, characterData: true});
} else
stopObserving(true);
break;
}
}
};
来引用选定的子数组。
答案 0 :(得分:2)
您可以利用分配,产生附加变量的副作用;例如,tmp
,用于分配,重新分配一个可以改变多个场合的变量
var tmp, postLists = [
[
tmp = [46276, 76235, 78128],
tmp.length,
1100
],
[
tmp = [],
tmp.length,
0
]
];
delete tmp;
console.log(postLists);