Javascript V8堆大小限制

Javascript V8堆大小限制,javascript,node.js,v8,Javascript,Node.js,V8,我有一个分配数组的简单节点方法: 函数分配器阵列(大小){ 设arr=Array(size).fill('helloworld'); log(`Array size:${arr.length}`); log(v8.getHeapStatistics()); console.log(); } 分配环(1e7); 当我使用命令node--max heap size=16 test.js运行脚本时,我会看到以下堆统计信息,似乎使用的堆大小远远高于堆大小限制: Array size: 10000000

我有一个分配数组的简单节点方法:

函数分配器阵列(大小){
设arr=Array(size).fill('helloworld');
log(`Array size:${arr.length}`);
log(v8.getHeapStatistics());
console.log();
}
分配环(1e7);
当我使用命令
node--max heap size=16 test.js运行脚本时,我会看到以下堆统计信息,似乎使用的堆大小远远高于堆大小限制:

Array size: 10000000
{
  total_heap_size: 85463040,
  total_heap_size_executable: 524288,
  total_physical_size: 84758848,
  total_available_size: 2217024,
  used_heap_size: 82159392,
  heap_size_limit: 16777216,
  malloced_memory: 16384,
  peak_malloced_memory: 418144,
  does_zap_garbage: 0,
  number_of_native_contexts: 1,
  number_of_detached_contexts: 0
}
这怎么可能

注意:我也尝试过使用
--max old space size
运行,结果类似


在哪里可以找到
--最大堆大小的文档?我在中没有看到它。它在V8文档中,如果您运行
节点--V8选项
您也可以看到它。