javascript - 如何遍历多维 JSON 数据并将相应的值传递给函数调用

标签 javascript arrays json vue.js

我有这个 JSON 数据

settings{
   "logo_dark":"logo_dark.png",
   "logo_light":"logo_light.jpg",
   "favicon":"favicon.png",
   "hero_logo":"hero_logo.jpg",
   "name":"Anime Stock",
   "short_name":"AnimeStock",
   "desc":"Description",
   "keywords":"keywords"
}

我如何调用函数来循环遍历所有值并根据传递给函数的参数返回数据。我希望能够做这样的事情:

getSiteSettings(logo_dark); // logo_dark.png

这是我尝试过的

getSiteSettings: (state) => (item) => {
        const settings = state.siteSettings
        for (const setting in settings) {
            if (settings.hasOwnProperty(setting)) {
                const element = settings[setting].item;
                return element;   
            }
        }
    }

最佳答案

理解您需要做什么有点困难。但取决于你的输出,我可以提供这样的答案。

var settings = {
   "logo_dark":"logo_dark.png",
   "logo_light":"logo_light.jpg",
   "favicon":"favicon.png",
   "hero_logo":"hero_logo.jpg",
   "name":"Anime Stock",
   "short_name":"AnimeStock",
   "desc":"Description",
   "keywords":"keywords"
};

function getSiteSettings(val){

    for(var key in settings)
        if(key === val)
            return settings[key];

}

console.log(getSiteSettings("logo_dark"));

关于javascript - 如何遍历多维 JSON 数据并将相应的值传递给函数调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59449525/

相关文章:

javascript - Polymer 1.0 中带有铁列表的平滑自动滚动

javascript - 转换带有对象的数组以进行操作

javascript - 如何访问嵌套的 JSON 数据?

javascript - 如何找到两个相同的行并删除它们? (不只是一个重复的!)

javascript - 在 Firefox 29+ 中查询下载历史列表

javascript - 如何使用 ng-model 通过 OR 操作过滤多个值?

javascript - 登录控制台时,从 JS 对象创建的数组显示循环对象

javascript - Jquery - 替换数组中定义的多个类

ios - swift 4 : UIImage from URL

javascript - ionic Angularjs vs jquery : $http. jsonp() vs jquery.ajax