我的JSON结构如下
var data = [
{name:'bracket', start_45641654:'46513489431',end_26441:'75434'},
{ name: 'notation', end_746413: '2146464', start_51345641: '76542464' },
];
我想打印开始、结束对象值,这里一个随机数附加到键 start_
和 end_
上。尝试使用 ^
正则表达式模式,但它不起作用。还有其他方法可以打印这些值吗?
data.forEach(function (v, i) {
$('tr').prepend('<td>Name:' + v['name'] + '</td>' +
'<td>Start:' + v['^start_'] + '</td>' +
'<td>End:' + v['^end_'] + '</td>'
);
});
最佳答案
您不能在那里使用正则表达式。
您可以循环访问对象的属性,检查名称是否具有所需的前缀。
data.forEach(function(v) {
let start, end;
Object.entries(v).forEach(([key, val]) => {
if (key.startsWith('start_')) {
start = val;
} else if (key.startsWith('end_')) {
end = val;
}
});
$('tr').prepend('<td>Name:' + v.name + '</td>' +
'<td>Start:' + start + '</td>' +
'<td>End:' + end + '</td>'
);
});
关于javascript - 使用键模式读取 JSON 对象值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67965087/