Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/406.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/73.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_Json_Sapui5 - Fatal编程技术网

Javascript 通过JSON数据解析并获取一个对象

Javascript 通过JSON数据解析并获取一个对象,javascript,jquery,json,sapui5,Javascript,Jquery,Json,Sapui5,我在SAPUI5应用程序中获得了一个简单的JSON数据结构,其中包含电话号码、传真号码和手机号码: { "teles": [ {"tele": "05312024040", "default": true}, {"tele": "017666254336", "default": false}, {"tele": "017666224336", "default": false} ],

我在SAPUI5应用程序中获得了一个简单的JSON数据结构,其中包含电话号码、传真号码和手机号码:

{
    "teles": [
                {"tele": "05312024040", "default": true},
                {"tele": "017666254336", "default": false},
                {"tele": "017666224336", "default": false}
    ],
    "faxs": [
                {"fax":"053155599755", "default": true},
                {"fax":"01548568745", "default": false}
    ],
    "mobils": [
                {"mobil":"017655994816", "default": true},
                {"mobil":"01548568745", "default": false}
    ]
 }
我的目标是循环/解析数据结构,得到默认的数字,并将其放入另一个名为“tele standard”、“fax standard”或“mobil standard”的模型中。这应该发生在显示数据之前,因此可以将其放入这些可编辑的文本字段中:

我根本不知道如何使用jquery、sapui5或javascript来实现我的目标。你能帮忙吗

新模型中的结果应如下所示:

{
    "archived": "-", 
    "nummer": "12", 
    "anrede": "Herr",
    "vorname": "Osamah", 
    "nachname": "Al-Doaiss",
    "tele-default": "05312024040",
    "fax-defaule": "053155599755",
    "mobil-default": "017655994816"
}

TL;DR:我有一个带有数组的JSON。我想对它们进行解析,得到默认的数字。不知道怎么做

将数据视为您的对象:

for(var phone in data.teles) {
    if(phone.default == true) {
        // Example on how to set phone number with jquery
        $('#defaultPhone').val(phone.tele);
        // You would need an input with the id defaultPhone for this
    }
}
编辑:关于您的更新,您可能需要这样做(将变量结果视为您的结果对象)


将数据视为您的对象:

for(var phone in data.teles) {
    if(phone.default == true) {
        // Example on how to set phone number with jquery
        $('#defaultPhone').val(phone.tele);
        // You would need an input with the id defaultPhone for this
    }
}
编辑:关于您的更新,您可能需要这样做(将变量结果视为您的结果对象)

看到这个了吗

var编号={
“电话”:[
{“tele”:“05312024040”,“default”:true},
{“tele”:“017666254336”,“default”:false},
{“tele”:“017666224336”,“default”:false}
],
“传真”:[
{“fax”:“053155599755”,“default”:true},
{“传真”:“01548568745”,“默认值”:false}
],
“手机”:[
{“mobil”:“017655994816”,“default”:true},
{“mobil”:“01548568745”,“default”:false}
]
};
函数getAllDefaultNumber(nums){
var outObj={};
(Object.keys(nums)| |[]).forEach(函数(数字类型){
(nums[number_type]| |[]).forEach(函数(obj){
如果(对象默认值){
outObj[number_type+'-默认']=obj.tele | | | obj.fax | | obj.mobil;
}
});
});
返回outObj;
}
document.getElementById('out').innerHTML=JSON.stringify(getAllDefaultNumbers(numbers))
见此

var编号={
“电话”:[
{“tele”:“05312024040”,“default”:true},
{“tele”:“017666254336”,“default”:false},
{“tele”:“017666224336”,“default”:false}
],
“传真”:[
{“fax”:“053155599755”,“default”:true},
{“传真”:“01548568745”,“默认值”:false}
],
“手机”:[
{“mobil”:“017655994816”,“default”:true},
{“mobil”:“01548568745”,“default”:false}
]
};
函数getAllDefaultNumber(nums){
var outObj={};
(Object.keys(nums)| |[]).forEach(函数(数字类型){
(nums[number_type]| |[]).forEach(函数(obj){
如果(对象默认值){
outObj[number_type+'-默认']=obj.tele | | | obj.fax | | obj.mobil;
}
});
});
返回outObj;
}
document.getElementById('out').innerHTML=JSON.stringify(getAllDefaultNumbers(numbers))
试试这个

1.
var数据={
“电话”:[
{“tele”:“05312024040”,“default”:true},
{“tele”:“017666254336”,“default”:false},
{“tele”:“017666224336”,“default”:false}
],
“传真”:[
{“fax”:“053155599755”,“default”:true},
{“传真”:“01548568745”,“默认值”:false}
],
“手机”:[
{“mobil”:“017655994816”,“default”:true},
{“mobil”:“01548568745”,“default”:false}
]
};
var模型={
“存档”:“—”,
“nummer”:“12”,
“anrede”:“先生”,
“vorname”:“Osamah”,
“nachname”:“Al-Doaiss”
};
Object.keys(数据).forEach(函数(键){
数据[key].forEach(函数(el){
变量键=对象键(el),
key=key.join('-');
if(el.default&&el.default==true&&!model[key]){
模型[keys.join('-')]=el[keys[0]];
}
});
});
console.log(模型)试试这个

1.
var数据={
“电话”:[
{“tele”:“05312024040”,“default”:true},
{“tele”:“017666254336”,“default”:false},
{“tele”:“017666224336”,“default”:false}
],
“传真”:[
{“fax”:“053155599755”,“default”:true},
{“传真”:“01548568745”,“默认值”:false}
],
“手机”:[
{“mobil”:“017655994816”,“default”:true},
{“mobil”:“01548568745”,“default”:false}
]
};
var模型={
“存档”:“—”,
“nummer”:“12”,
“anrede”:“先生”,
“vorname”:“Osamah”,
“nachname”:“Al-Doaiss”
};
Object.keys(数据).forEach(函数(键){
数据[key].forEach(函数(el){
变量键=对象键(el),
key=key.join('-');
if(el.default&&el.default==true&&!model[key]){
模型[keys.join('-')]=el[keys[0]];
}
});
});

console.log(模型)
     objJson =   JSON.parse(vals);
      var tele_default;
      if(objJson.teles.count>0){
        for(int i=0;i<objJson.teles.count;i++){
            if(objJson.teles[i].default == "true"){
                tele_default = objJson.teles[i].tele
             }
          }
      }
objJson=JSON.parse(vals);
var tele_违约;
if(objJson.teles.count>0){

对于(int i=0;i,下面的代码片段用于获取默认电话号码。 VAL将存储您的JSON数据

     objJson =   JSON.parse(vals);
      var tele_default;
      if(objJson.teles.count>0){
        for(int i=0;i<objJson.teles.count;i++){
            if(objJson.teles[i].default == "true"){
                tele_default = objJson.teles[i].tele
             }
          }
      }
objJson=JSON.parse(vals);
var tele_违约;
if(objJson.teles.count>0){
对于(int i=0;我喜欢这个?像这样?