Javascript 数组赋值后为空
我有一个包含某种JSON数据的变量Javascript 数组赋值后为空,javascript,arrays,json,Javascript,Arrays,Json,我有一个包含某种JSON数据的变量 var blogData = [ { "blogTitle":"Bangladesh", "imagePath":"/img/blog/bangladesh.jpg" },{ "blogTitle":"India", "imagePath":"
var blogData = [
{
"blogTitle":"Bangladesh",
"imagePath":"/img/blog/bangladesh.jpg"
},{
"blogTitle":"India",
"imagePath":"/img/blog/india.jpg"
}
]
我想要的是一个新的数组标题过滤器如:
var titleFilter = [
Bangladesh : "/img/blog/bangladesh.jpg",
India : "/img/blog/india.jpg"
]
为此,我尝试了以下方法:
var titleFilter = [];
for (var i = 0; i < blogData.length; i++) {
titleFilter[blogData[i].blogTitle] = blogData[i].imagePath;
}
如果有人能帮我解决这个问题,那就太好了 我不确定你在寻找什么,但你可以用这样的地图来实现它
var map = new Object(); // or var map = {};
map[blogData[i].blogTitle] = blogData[i].imagePath;
var blogData=[
{
“博客标题”:“孟加拉国”,
“imagePath”:“/img/blog/bangladesh.jpg”
},
{
“博客标题”:“印度”,
“imagePath”:“/img/blog/india.jpg”
}
]
变量titleFilter={}
blogData.forEach(x=>titleFilter[x.blogtile]=x.imagePath)
试试这个:
const blogData=[
{
“博客标题”:“孟加拉国”,
“imagePath”:“/img/blog/bangladesh.jpg”
},{
“博客标题”:“印度”,
“imagePath”:“/img/blog/india.jpg”
}
];
const result=blogData.reduce((acc,ele)=>(acc[ele.blogtile]=ele.imagePath,acc),{});
控制台日志(结果)代码>你说你想要的结果没有意义<代码>[]
表示法用于数组,数组元素没有示例代码中的标签。@非常抱歉,因为我不熟悉JavaScript,问了一些不清楚的问题。{}是数组而不是[]的有效符号吗?{}
是对象初始值设定项,[]
是数组初始值设定项。
var map = new Object(); // or var map = {};
map[blogData[i].blogTitle] = blogData[i].imagePath;