这里是数据
{
"items": [
{
"sys": { "id": " 01/03/1997" },
"fields": {
"title": "First title",
"p": "paragraph 1.",
"image": { "fields": { "file": { "url": "../../images/cheap-skateboards.png" } } }
}
},
{
"sys": { "id": "2 01/03/1997" },
"fields": {
"title": "First Blog Post",
"p": "paragraph 2",
"image": { "fields": { "file": { "url": "../../images/cheap-skateboards.png" } } }
}
},
{
"sys": { "id": "3 01/03/1997" },
"fields": {
"title": "First Blog Post 1",
"p": "paragraph 3",
"image": { "fields": { "file": { "url": "../../images/cheap-skateboards.png" } } }
}
},
{
"sys": { "id": "4 01/03/1997" },
"fields": {
"title": "First Blog Post 2",
"p": "paragraph 4",
"image": { "fields": { "file": { "url": "../../images/cheap-skateboards.png" } } }
}
},
{
"sys": { "id": "8 01/03/1997" },
"fields": {
"title": "First Blog Post 3",
"p": "paragraph",
"image": { "fields": { "file": { "url": "../../images/cheap-skateboards.png" } } }
}
}
]
}
我正在尝试在服务器端循环访问此数据并获取特定的键值。
for (var i = 0; i < jsonObj.items.length; i++) {
var currentObject = jsonObj.items[i].fields
for(var title in currentObject){
if(currentObject.hasOwnProperty(title)) {
// console.log(title + ': ' + currentObject[title]);
// console.log(currentObject[i]);
// console.log(`${title}`);
// var pageTitle = currentObject[title];
// console.log(pageTitle);
var pageTitle = currentObject[title];
console.log(currentObject[title]);
}
}
console.log(currentObject[title]);
}
fs.appendFile( './public/html/' + `${title}` + '.html', `file.html`
, function (err) {
if (err) throw err;
console.log('Saved!');
});
它一直在输出
First title
paragraph 1.
{ fields: { file: { url: '../../images/cheap-skateboards.png' } } }
{ fields: { file: { url: '../../images/cheap-skateboards.png' } } }
First Blog Post
paragraph 2
{ fields: { file: { url: '../../images/cheap-skateboards.png' } } }
{ fields: { file: { url: '../../images/cheap-skateboards.png' } } }
First Blog Post 1
paragraph 3
{ fields: { file: { url: '../../images/cheap-skateboards.png' } } }
{ fields: { file: { url: '../../images/cheap-skateboards.png' } } }
First Blog Post 2
paragraph 4
{ fields: { file: { url: '../../images/cheap-skateboards.png' } } }
{ fields: { file: { url: '../../images/cheap-skateboards.png' } } }
First Blog Post 3
paragraph
{ fields: { file: { url: '../../images/cheap-skateboards.png' } } }
{ fields: { file: { url: '../../images/cheap-skateboards.png' } } }
并创建一个文件image.html,它是数组中的最后一个键。我如何获得要输出的标题的第一把钥匙?我想用这些标题作为文件名在服务器上创建一个新文件。
答案 0 :(得分:0)
我做得不太好,也许您可以澄清一下,我假设您想将title
作为键并将url
作为值,是吗?
那么简单的map
就足够了...
请小心,因为键的值不能重复,而且标题可能重复。
var jsonObj = {
"items": [
{
"sys": { "id": " 01/03/1997" },
"fields": {
"title": "First title",
"p": "paragraph 1.",
"image": { "fields": { "file": { "url": "../../images/cheap-skateboards.png" } } }
}
},
{
"sys": { "id": "2 01/03/1997" },
"fields": {
"title": "First Blog Post",
"p": "paragraph 2",
"image": { "fields": { "file": { "url": "../../images/cheap-skateboards.png" } } }
}
},
{
"sys": { "id": "3 01/03/1997" },
"fields": {
"title": "First Blog Post 1",
"p": "paragraph 3",
"image": { "fields": { "file": { "url": "../../images/cheap-skateboards.png" } } }
}
},
{
"sys": { "id": "4 01/03/1997" },
"fields": {
"title": "First Blog Post 2",
"p": "paragraph 4",
"image": { "fields": { "file": { "url": "../../images/cheap-skateboards.png" } } }
}
},
{
"sys": { "id": "8 01/03/1997" },
"fields": {
"title": "First Blog Post 3",
"p": "paragraph",
"image": { "fields": { "file": { "url": "../../images/cheap-skateboards.png" } } }
}
}
]
};
var newObject = jsonObj.items.map((x) => {
const o = {}; // create the object
o[x.fields.title] = x.fields.image.fields.file.url; // assign the key and value
return o; // return the new object
});
console.log(newObject); // print
然后您可以使用{p>
newObject