Javascript 通过JSON数据解析并获取一个对象
我在SAPUI5应用程序中获得了一个简单的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} ],
{
"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(模型)下面的代码片段用于获取默认电话号码。
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;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;我喜欢这个?像这样?