我正在尝试通过JSON导入将经过修改的拇指列表中的项目添加到服务工作者存储缓存中。
一切工作都产生了一个格式正确且完整的拇指数组以进行缓存-console.log(cacheArray)
语句内部的for
-但我似乎无法从中获得最终的数组函数-console.log('updateCache: ' + cacheArray)
返回空白:
fetch('alldates.txt').then(function(response) {
return response.text();
}).then(function(string) {
var alldatesobj = JSON.parse(string);
var cacheThumb;
var thumbslist = Object.values(alldatesobj);
var cacheArray = new Array();
function updateCache(cacheArray) {
for(i = 1; i <= thumbslist.length; i++) {
cacheThumb = thumbslist[i].replace('100315', '100315/thumbs');
cacheArray.push(cacheThumb);
//console.log(cacheArray.slice(-1)[0]);
//console.log(cacheArray);
//^^^ array is correctly formed!!!
}
return cacheArray;
}
updateCache(console.log('updateCache: ' + cacheArray));
});
答案 0 :(得分:0)
遗憾的是,我无法解析这些答复:即使它们指向了总体方向,我也缺乏基本知识。
其他人提供了解决方案:
fetch('alldates.txt').then(function(response) {
return response.text();
}).then(function(string) {
var alldatesobj = JSON.parse(string);
var cacheArray = Object.values(alldatesobj).map(function(item){
return item.replace(/100315/,'$&/thumbs');
});
console.log('cacheArray: ' + cacheArray);
});