aboutsummaryrefslogtreecommitdiff
path: root/node_modules/es5-ext/object/safe-traverse.js
blob: 7b72d55500a9b0c502e1911d5523549b4291f6a2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
"use strict";

var value   = require("./valid-value")
  , isValue = require("./is-value");

module.exports = function (obj /*, …names*/) {
	var length, current = 1;
	value(obj);
	length = arguments.length - 1;
	if (!length) return obj;
	while (current < length) {
		obj = obj[arguments[current++]];
		if (!isValue(obj)) return undefined;
	}
	return obj[arguments[current]];
};