Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/430.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从json对象打印所选属性_Javascript_Jquery - Fatal编程技术网

Javascript 从json对象打印所选属性

Javascript 从json对象打印所选属性,javascript,jquery,Javascript,Jquery,我将一个json文件加载到一个变量中。现在我需要打印该变量(json对象)的一些属性。我可以单独访问它们,但我无法激怒和拯救它们 var companyList = (function() { var json = null; $.ajax({ 'async': false, 'global': false, 'url': "/company_list.json", 'dataType': "json",

我将一个json文件加载到一个变量中。现在我需要打印该变量(json对象)的一些属性。我可以单独访问它们,但我无法激怒和拯救它们

var companyList = (function() {
    var json = null;
    $.ajax({
        'async': false,
        'global': false,
        'url': "/company_list.json",
        'dataType': "json",
        'success': function (data) {
            json = data;
        }
    });
    return json;
})();
console.log(companyList.comp001.title); // This works 

let htmlString = "";

for (i = 0; i <480; i++) {
htmlString += "<p>" + companyList.comp[i].title + " </P>";
};     // I could not able to save them in htmlstring

最简单的方法是循环对象键,并使用
object.keys(companyList)
获取每个对象的
title
值:

var公司列表={
“comp001”:{
“头衔”:“亚琴穆恩切纳”,
“img”:“/公司徽标/logos1x/de001.png?ver=gz30i”,
“imgsrcset”:“/公司徽标/logos1x/de001.png?ver=gz30i 1x,/公司徽标/logos2x/de001.png?ver=gz30i 2x,/公司徽标/logos3x/de001.png?ver=gz30i 3x”
},
“comp002”:{
“标题”:“ADAC”,
“img”:“/公司徽标/logos1x/de002.png?ver=gz30i”,
“imgsrcset”:“/公司徽标/logos1x/de002.png?ver=gz30i 1x,/公司徽标/logos2x/de002.png?ver=gz30i 2x,/公司徽标/logos3x/de002.png?ver=gz30i 3x”
},
“comp003”:{
“头衔”:“阿德勒”,
“img”:“/公司徽标/logos1x/de003.png?ver=gz30i”,
“imgsrcset”:“/公司徽标/logos1x/de003.png?ver=gz30i 1x,/公司徽标/logos2x/de003.png?ver=gz30i 2x,/公司徽标/logos3x/de003.png?ver=gz30i 3x”
},
“comp004”:{
“标题”:“ADVOCARD”,
“img”:“/公司徽标/logos1x/de004.png?ver=gz30i”,
“imgsrcset”:“/公司徽标/logos1x/de004.png?ver=gz30i 1x,/公司徽标/logos2x/de004.png?ver=gz30i 2x,/公司徽标/logos3x/de004.png?ver=gz30i 3x”
}};
让htmlString=“”;
Object.keys(公司列表).forEach(函数(键){
htmlString+=“”+公司列表[键]。标题;+“

”; }); document.getElementById('container')。innerHTML=htmlString
您的问题是:

for (i = 0; i <480; i++) {
    htmlString += "<p>" + companyList.comp[i].title + " </P>";
}
让它工作

但这并不是全部,你的
for
只为480公司工作,如果你的
更少,你会在
htmlString
中得到很多未定义的内容,如果你的
更多,你会损失一些

companyList={
“comp001”:{
“头衔”:“亚琴穆恩切纳”,
“img”:“/公司徽标/logos1x/de001.png?ver=gz30i”,
“imgsrcset”:“/公司徽标/logos1x/de001.png?ver=gz30i 1x,/公司徽标/logos2x/de001.png?ver=gz30i 2x,/公司徽标/logos3x/de001.png?ver=gz30i 3x”
},
“comp002”:{
“标题”:“ADAC”,
“img”:“/公司徽标/logos1x/de002.png?ver=gz30i”,
“imgsrcset”:“/公司徽标/logos1x/de002.png?ver=gz30i 1x,/公司徽标/logos2x/de002.png?ver=gz30i 2x,/公司徽标/logos3x/de002.png?ver=gz30i 3x”
},
“comp003”:{
“头衔”:“阿德勒”,
“img”:“/公司徽标/logos1x/de003.png?ver=gz30i”,
“imgsrcset”:“/公司徽标/logos1x/de003.png?ver=gz30i 1x,/公司徽标/logos2x/de003.png?ver=gz30i 2x,/公司徽标/logos3x/de003.png?ver=gz30i 3x”
},
“comp004”:{
“标题”:“ADVOCARD”,
“img”:“/公司徽标/logos1x/de004.png?ver=gz30i”,
“imgsrcset”:“/公司徽标/logos1x/de004.png?ver=gz30i 1x,/公司徽标/logos2x/de004.png?ver=gz30i 2x,/公司徽标/logos3x/de004.png?ver=gz30i 3x”
},}
让htmlString=“”
for(让公司进入公司列表){
htmlString+=“”+公司列表[公司]。标题+”

”; };
log(htmlString)
获取它们的键,然后减少对象以构建包含所有标题的最终html

var公司列表={
“comp001”:{
“头衔”:“亚琴穆恩切纳”,
“img”:“/公司徽标/logos1x/de001.png?ver=gz30i”,
“imgsrcset”:“/公司徽标/logos1x/de001.png?ver=gz30i 1x,/公司徽标/logos2x/de001.png?ver=gz30i 2x,/公司徽标/logos3x/de001.png?ver=gz30i 3x”
},
“comp002”:{
“标题”:“ADAC”,
“img”:“/公司徽标/logos1x/de002.png?ver=gz30i”,
“imgsrcset”:“/公司徽标/logos1x/de002.png?ver=gz30i 1x,/公司徽标/logos2x/de002.png?ver=gz30i 2x,/公司徽标/logos3x/de002.png?ver=gz30i 3x”
},
“comp003”:{
“头衔”:“阿德勒”,
“img”:“/公司徽标/logos1x/de003.png?ver=gz30i”,
“imgsrcset”:“/公司徽标/logos1x/de003.png?ver=gz30i 1x,/公司徽标/logos2x/de003.png?ver=gz30i 2x,/公司徽标/logos3x/de003.png?ver=gz30i 3x”
},
“comp004”:{
“标题”:“ADVOCARD”,
“img”:“/公司徽标/logos1x/de004.png?ver=gz30i”,
“imgsrcset”:“/公司徽标/logos1x/de004.png?ver=gz30i 1x,/公司徽标/logos2x/de004.png?ver=gz30i 2x,/公司徽标/logos3x/de004.png?ver=gz30i 3x”
}
};
const htmlString=Object.keys(companyList).reduce(函数(acc,key){
返回acc+“”+公司列表[key]。title+“

”; }, ""); document.getElementById('container')。innerHTML=htmlString
如果您使用的是ajax。无法分配变量…请使用承诺的回调
。然后()
。。
for (i = 0; i <480; i++) {
    htmlString += "<p>" + companyList.comp[i].title + " </P>";
}
companyList["comp" + i].title