mirror of
https://github.com/liriliri/eruda.git
synced 2026-03-20 09:38:37 +08:00
Dev: Optimize console big array performance
This commit is contained in:
@@ -66,7 +66,7 @@ export default function getAbstract(obj, {
|
||||
{
|
||||
if (i > keyNum)
|
||||
{
|
||||
objEllipsis = '...';
|
||||
objEllipsis = ', ...';
|
||||
return;
|
||||
}
|
||||
let key = wrapKey(escapeJsonStr(name));
|
||||
@@ -118,8 +118,19 @@ export default function getAbstract(obj, {
|
||||
if (doStringify)
|
||||
{
|
||||
json = '[';
|
||||
each(obj, val => parts.push(`${getAbstract(val, passOpts)}`));
|
||||
json += parts.join(', ') + ']';
|
||||
let len = obj.length,
|
||||
arrEllipsis = '';
|
||||
|
||||
if (len > 100)
|
||||
{
|
||||
len = 100;
|
||||
arrEllipsis = ', ...';
|
||||
}
|
||||
for (let i = 0; i < len; i++)
|
||||
{
|
||||
parts.push(`${getAbstract(obj[i], passOpts)}`);
|
||||
}
|
||||
json += parts.join(', ') + arrEllipsis + ']';
|
||||
} else
|
||||
{
|
||||
json = wrapStr(`Array[${obj.length}]`);
|
||||
|
||||
@@ -31,6 +31,9 @@
|
||||
<li>
|
||||
<a href="#" id="trigger-error">Trigger Error</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#" id="big-array">Big Array</a>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
<script>
|
||||
@@ -99,6 +102,14 @@
|
||||
{
|
||||
triggerError();
|
||||
});
|
||||
addClickEvent('big-array', function ()
|
||||
{
|
||||
var arr = [];
|
||||
for (var i = 0; i < 10000; i++) {
|
||||
arr.push(i);
|
||||
}
|
||||
console.log(arr);
|
||||
});
|
||||
</script>
|
||||
<script>boot();</script>
|
||||
</body>
|
||||
|
||||
Reference in New Issue
Block a user