当前位置: 首页 > 面试题库 >

写个方法近似计算指定数组或对象占用内存的大小

都建树
2023-03-14
本文向大家介绍写个方法近似计算指定数组或对象占用内存的大小相关面试题,主要包含被问及写个方法近似计算指定数组或对象占用内存的大小时的应答技巧和注意事项,需要的朋友参考一下
   function sizeOfObject(obj)){
       if(object == null){
           return 0
       }
       var bytes = 0
       for (var key in obj) {
           if (!Object.hasOwnProperty.call(obj, key)) {
               continue
           }
           bytes += sizeof(key)
           try {
               bytes += sizeof(obj[key])
           } catch (ex) {
               if (ex instanceof RangeError) {
                   bytes = 0
               }
           }
       }
       return bytes
   }
   function sizeOf(obj){
       var objType = typeof obj
       switch(objType){
           case 'string':
               return obj.length*3;
           case 'boolean'
               return 1;
           case 'number':
               return 8;
           case 'object':
               if(Array.isArray(obj)){
                   return obj.map(sizeOf).reduce(acc,curr)=>acc+curr,0)
               }else{
                   return sizeOfObject(obj)
               }
           default:
               return 0
       }
   }
  • 参考文章
 类似资料:
  • 本文向大家介绍计算一个Java对象占用字节数的方法,包括了计算一个Java对象占用字节数的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了如何计算(或者说,估算)一个Java对象占用的内存数量的方法。分享给大家供大家参考。具体分析如下: 通常,我们谈论的堆内存使用的前提是以“一般情况”为背景的。不包括下面两种情形:   某些情况下,JVM根本就没有把Object放入堆中。例如:原则上讲

  • 问题内容: 我需要以编程方式确切地找出给定的Java对象正在占用多少内存,包括它所引用的对象所占用的内存。 我可以生成内存堆转储,并使用工具分析结果。但是,生成堆转储以及使用这种工具读取转储以生成报告需要花费大量时间。考虑到我可能需要多次执行此操作,如果我可以在项目中添加一些代码来赋予我“运行时”价值,那么我的工作就会更加敏捷。 我怎样才能最好地做到这一点? ps:具体地说,我有一个javax.x

  • 本文向大家介绍写个方法判断数组对象中是否存在某个对象相关面试题,主要包含被问及写个方法判断数组对象中是否存在某个对象时的应答技巧和注意事项,需要的朋友参考一下

  • 问题内容: 我想将地图限制为最多X个字节。似乎没有直接的方法可以计算映射的字节长度。 package具有不错的功能,但仅适用于切片或“固定值”,不适用于地图。 我可以尝试从地图中获取所有键/值对,推断它们的类型(如果为)并计算长度- 但这既麻烦又可能不正确(因为这会排除地图的“内部”运行成本)本身-管理指向元素的指针等)。 有建议的方式吗?最好是一个代码示例。 问题答案: 这是地图标题的定义: 计

  • 本文向大家介绍JavaScript获得指定对象大小的方法,包括了JavaScript获得指定对象大小的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了JavaScript获得指定对象大小的方法。分享给大家供大家参考。具体如下: 用法如下: 希望本文所述对大家的javascript程序设计有所帮助。