UNPKG

object-traversal

Version:

Flexible and performant utility for traversing javascript objects

21 lines (17 loc) 450 B
import { DEFAULT_SEPARATOR } from './constants'; import { ArbitraryObject } from './types'; export function getNodeByPath( root: ArbitraryObject, path: string, separator: string = DEFAULT_SEPARATOR ): any { let node: any = root; const segments: string[] = path.split(separator); let index = 0; let segment = segments[index]; while (node && segment) { node = node[segment]; segment = segments[++index]; } return node; }