V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Sam99
V2EX  ›  程序员

== > < 在 JavaScript 这三种运算哪个更消耗 cpu 和内存 ,以及所用时间 ?

  •  1
     
  •   Sam99 · 2022-08-11 11:56:02 +08:00 · 1510 次点击
    这是一个创建于 835 天前的主题,其中的信息可能已经有所发展或是发生改变。
    11 条回复    2022-08-11 15:12:03 +08:00
    murmur
        1
    murmur  
       2022-08-11 11:57:49 +08:00   ❤️ 1
    这是面试题还是哪里的歪门邪教,前端绝大多数性能开销都来自 dom 操作,或者 canvas 这种衍生的图形操作,数据计算部分真没多少,除了某些产品经理想压榨用户机器,在前端做视频编解码然后被用户一顿骂那种
    dethan
        2
    dethan  
       2022-08-11 11:57:52 +08:00 via Android
    这不是月薪 3000 的我该考虑的问题...
    zmal
        3
    zmal  
       2022-08-11 12:00:12 +08:00
    盲猜是==
    jadehare
        4
    jadehare  
       2022-08-11 12:01:04 +08:00
    需要考虑这个问题的使用场景是啥?
    kenvix
        5
    kenvix  
       2022-08-11 12:02:01 +08:00
    这是想考计组 /微机原理的面试题吧?我认为是 ==,因为==可以用 XOR 指令,而大小比较就只能 CMP 了
    dcsuibian
        6
    dcsuibian  
       2022-08-11 12:13:52 +08:00 via Android
    用 js 做开发,却在这种地方比嵌入式开发都抠
    Ediacaran
        7
    Ediacaran  
       2022-08-11 12:26:31 +08:00
    处理类型花费的 cpu 和内存远高于比较操作本身吧
    Jooooooooo
        8
    Jooooooooo  
       2022-08-11 12:36:41 +08:00
    这和硬件有关.

    不太清楚问这种问题意义在哪, 如果真的对耗时敏感, 那更应该关注缓存的问题. 很可能整个操作最耗时的是因为想要的数据并不在 cpu 里, 需要从内存里读.
    natsji
        9
    natsji  
       2022-08-11 12:52:38 +08:00 via Android
    三个各 loop 一百万次测一下
    sujin190
        10
    sujin190  
       2022-08-11 13:48:38 +08:00
    静态编译型语言估计和 cmp 的指令周期有关,不同 cpu 可能不太相同,不过大概率差不多,不过 JavaScript 这种动态语言,两者都要走对应数据结构的比较实现,类型不同还涉及自动类型转换的问题,而且把大概率底层应该走的都是同一个 cmp 实现,=== 就会先做类型判断了,类型不同直接就返回了,而且大概率类型判断是比较容易实现的,这个按理应该更快一些才是
    wanguorui123
        11
    wanguorui123  
       2022-08-11 15:12:03 +08:00
    ==
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1888 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 00:28 · PVG 08:28 · LAX 16:28 · JFK 19:28
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.