gpt4 book ai didi

javascript - JSON 连接

转载 作者:行者123 更新时间:2023-12-02 19:32:43 26 4
gpt4 key购买 nike

如何转换此 JSON 对象:

"context":{"#text":["Most Visited Pages  "," 
Hall Residents Advanced Components"," Clerk"],"highlight":["City","City"]}

进入:

Most Visited Pages <highlight>City</highlight> 
Hall Residents Advanced Components <highlight>City</highlight> Clerk

通过使用 JavaScript?

我已经尝试过:

 function highlightContext_22(context) {
var highlighted;
$.each(context['#text'], function(key, val) {
highlighted += val + val.highlight;
});
return highlighted;
}

输出是:

undefinedMost Visited Pages undefined 
Hall Residents Advanced Components undefined Clerkundefined

最佳答案

属性val.highlight不存在,这就是您未定义的原因。您的对象具有 #text 键的数组值。 highlight 键是一个单独的属性,因此无法在当前上下文中访问。

下面的解决方案更正引用以允许引用highlight 值。 出于说明目的,我添加了其他指标。

JavaScript:

var obj = {
"context": {
"#text": [
"Most Visited Pages ",
" Hall Residents Advanced Components",
" Clerk"
],
"highlight": [
"City",
"City"
]
}
};

var result = [];
var data = obj.context;

for(var i=0; i < data['#text'].length; i++){
result[i] = data['#text'][i] + (data.highlight[i] ? '<highlight>' + data.highlight[i] + '</highlight>' : '');
}

document.getElementById('result').innerHTML = result.join('');

alert(document.getElementById('result').innerHTML);

演示:http://jsfiddle.net/Wv3vH/

注意:以上数据尝试比较两个长度相等的数组。由于#text数组比highlight数组大1,因此存在一个未定义的值,由于 bool 逻辑检查该值是否存在而不会显示该值。

关于javascript - JSON 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11318251/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com