Javascript 数组赋值后为空

Javascript 数组赋值后为空,javascript,arrays,json,Javascript,Arrays,Json,我有一个包含某种JSON数据的变量 var blogData = [ { "blogTitle":"Bangladesh", "imagePath":"/img/blog/bangladesh.jpg" },{ "blogTitle":"India", "imagePath":"

我有一个包含某种JSON数据的变量

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;