diff --git a/lodash.js b/lodash.js index a111b5c41..8e51b8255 100644 --- a/lodash.js +++ b/lodash.js @@ -585,6 +585,7 @@ 'while (++argsIndex < argsLength) {\n' + ' iterable = args[argsIndex];\n' + ' if (iterable && objectTypes[typeof iterable]) {', + 'arrays': false, 'loop': "if (typeof result[index] == 'undefined') result[index] = iterable[index]", 'bottom': ' }\n}' }; diff --git a/test/test.js b/test/test.js index 4ba65ce10..f260ca850 100644 --- a/test/test.js +++ b/test/test.js @@ -706,19 +706,21 @@ deepEqual(func({}, new Foo), {}); }); - test('lodash.' + methodName + ' should treat sparse arrays as dense', function() { - var array = Array(3); - array[0] = 1; - array[2] = 3; + if (methodName == 'merge') { + test('lodash.' + methodName + ' should treat sparse arrays as dense', function() { + var array = Array(3); + array[0] = 1; + array[2] = 3; - var actual = func([], array), - expected = array.slice(); + var actual = func([], array), + expected = array.slice(); - expected[1] = undefined; + expected[1] = undefined; - ok(1 in actual); - deepEqual(actual, expected); - }); + ok(1 in actual); + deepEqual(actual, expected); + }); + } }); /*--------------------------------------------------------------------------*/