如何使用jQuery.map(或vanilla JS)递归修改嵌套对象?
// Original Object
var data = [{
name: 'Parent',
children: [{
name: 'Child',
children: [{
name: 'ChildChild'
}]
}]
}];
// Resulting Object
var data = [{
name: 'Parent',
text: 'Parent',
children: [{
name: 'Child',
text: 'Child',
children: [{
name: 'ChildChild',
text: 'ChildChild'
}]
}]
}];
我目前在顶层使用jQuery.map这样做,但不知道如何递归实现。
$.map(data, function(obj){
return $.extend(obj, {text: obj.name});
});
答案 0 :(得分:4)
不要使用let englishTextSize = englishString.sizeWithAttributes([NSFontAttributeName: UIFont.systemFontOfSize(14)])
let englishLabel = UILabel(frame: CGRectMake(self.view.center.x, 150, englishTextSize.width, englishTextSize.height))
print(englishLabel.text.sizeWithAttributes(orderAttributes).width)
来修改数组;它旨在创建一个数组的子集。要修改数组,请使用map()
或任何其他标准循环机制。
考虑到这一点,在这种情况下,您可以使用each()
来递归数组每个级别的对象。试试这个:
$.each()