Ensure _.has returns the correct result for nested sparse arrays. [closes #2614]

This commit is contained in:
John-David Dalton
2016-08-30 17:12:59 -07:00
parent 0263a879c4
commit 0d757fdc40
2 changed files with 37 additions and 16 deletions

View File

@@ -5930,9 +5930,9 @@
function hasPath(object, path, hasFunc) {
path = isKey(path, object) ? [path] : castPath(path);
var result,
index = -1,
length = path.length;
var index = -1,
length = path.length,
result = false;
while (++index < length) {
var key = toKey(path[index]);
@@ -5941,10 +5941,10 @@
}
object = object[key];
}
if (result) {
if (result || ++index != length) {
return result;
}
var length = object ? object.length : 0;
length = object ? object.length : 0;
return !!length && isLength(length) && isIndex(key, length) &&
(isArray(object) || isArguments(object));
}