src/apply.js
function create_node_by_path(context, path, len, tracker) {
	let node = context.state.rootNode;
	for (let i = 0; i < len; i++) {
		const k = path[i];
		if (k == "_") continue;
		if (k == "#") {
			node = context.state.rootNode;
			continue;
		}
		if (node_type(node[k]) != NodeTypes.NODE) {
			commit_node_prop(context, node, k, create_node(), tracker);
		}
		node = node[k];
	}
	return node;
}
function create_node_by_path(context, path, len, tracker) {
	let node = context.state.rootNode;
	for (let i = 0; i < len; i++) {
		const k = path[i];
		if (k == "_") continue;
		if (k == "#") {
			node = context.state.rootNode;
			continue;
		}
		if (node_type(node[k]) != NodeTypes.NODE) {
			commit_node_prop(context, node, k, create_node(), tracker);
		}
		node = node[k];
	}
	return node;
}
function create_node_by_path ( context , path , len , tracker ) { let node = context . state . rootNode ; for ( let i = 0 ; i < len ; i ++ ) { const k = path [ i ] ; if ( k == "_" ) continue ; if ( k == "#" ) { node = context . state . rootNode ; continue ; } if ( node_type ( node [ k ] ) != NodeTypes . NODE ) { commit_node_prop ( context , node , k , create_node ( ) , tracker ) ; } node = node [ k ] ; } return node ; }
Follow path create node if not existed
@param {*} context
@param {*} node
@param {*} keys
@param {*} len
@param {*} tracker
Follow path create node if not existed