diff --git a/lib/util.js b/lib/util.js index 80195c26722a1f..fa750d363be0a7 100644 --- a/lib/util.js +++ b/lib/util.js @@ -586,6 +586,8 @@ function formatValue(ctx, value, recurseTimes) { if (recurseTimes < 0) { if (isRegExp(value)) { return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp'); + } else if (Array.isArray(value)) { + return ctx.stylize('[Array]', 'special'); } else { return ctx.stylize('[Object]', 'special'); } diff --git a/test/parallel/test-util-inspect-proxy.js b/test/parallel/test-util-inspect-proxy.js index 744bf235266e86..e9ef953bf3ba77 100644 --- a/test/parallel/test-util-inspect-proxy.js +++ b/test/parallel/test-util-inspect-proxy.js @@ -47,13 +47,13 @@ const expected1 = 'Proxy [ {}, {} ]'; const expected2 = 'Proxy [ Proxy [ {}, {} ], {} ]'; const expected3 = 'Proxy [ Proxy [ Proxy [ {}, {} ], {} ], Proxy [ {}, {} ] ]'; const expected4 = 'Proxy [ Proxy [ {}, {} ], Proxy [ Proxy [ {}, {} ], {} ] ]'; -const expected5 = 'Proxy [ Proxy [ Proxy [ Proxy [Object], {} ],' + +const expected5 = 'Proxy [ Proxy [ Proxy [ Proxy [Array], {} ],' + ' Proxy [ {}, {} ] ],\n Proxy [ Proxy [ {}, {} ]' + - ', Proxy [ Proxy [Object], {} ] ] ]'; -const expected6 = 'Proxy [ Proxy [ Proxy [ Proxy [Object], Proxy [Object]' + - ' ],\n Proxy [ Proxy [Object], Proxy [Object] ] ],\n' + - ' Proxy [ Proxy [ Proxy [Object], Proxy [Object] ],\n' + - ' Proxy [ Proxy [Object], Proxy [Object] ] ] ]'; + ', Proxy [ Proxy [Array], {} ] ] ]'; +const expected6 = 'Proxy [ Proxy [ Proxy [ Proxy [Array], Proxy [Array]' + + ' ],\n Proxy [ Proxy [Array], Proxy [Array] ] ],\n' + + ' Proxy [ Proxy [ Proxy [Array], Proxy [Array] ],\n' + + ' Proxy [ Proxy [Array], Proxy [Array] ] ] ]'; assert.strictEqual(util.inspect(proxy1, opts), expected1); assert.strictEqual(util.inspect(proxy2, opts), expected2); assert.strictEqual(util.inspect(proxy3, opts), expected3); diff --git a/test/parallel/test-util-inspect.js b/test/parallel/test-util-inspect.js index 873918f942284b..3719496c1004f4 100644 --- a/test/parallel/test-util-inspect.js +++ b/test/parallel/test-util-inspect.js @@ -72,6 +72,8 @@ assert.strictEqual(util.inspect({'a': {'b': { 'c': 2}}}, false, 0), '{ a: [Object] }'); assert.strictEqual(util.inspect({'a': {'b': { 'c': 2}}}, false, 1), '{ a: { b: [Object] } }'); +assert.strictEqual(util.inspect({'a': {'b': ['c']}}, false, 1), + '{ a: { b: [Array] } }'); assert.strictEqual(util.inspect(Object.create({}, {visible: {value: 1, enumerable: true}, hidden: {value: 2}})), '{ visible: 1 }'