Node.js 对象合并


var arr = ['a', 'b', 'c', 'd'];

var json = {
	a: {
		f: {
			g: {
				h: {}
			}
		},
		d: {},
	}
};

var R =  toJSON(arr);
R = copy(R,json);
console.log(R);

function toJSON(arr) {
	var value = arr.shift();
	var newobj = {};
	newobj = newobj[value] || {};
	if (arr.length > 0) {
		newobj[value] = toJSON( arr);
	}
	return newobj;
}

function copy(newobj, obj) {
	for (var attr in obj) {
		newobj[attr] = newobj[attr] || {};
		newobj[attr] = copy(newobj[attr], obj[attr]);
	}
	newobj = newobj || {};
	return newobj;
}

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注