【问题标题】:How can I use modulo operator (%) in JavaScript? [duplicate]如何在 JavaScript 中使用模运算符 (%)? [复制]
【发布时间】:2013-05-06 12:19:19
【问题描述】:

如何在 JavaScript 项目的数字计算中使用模运算符 (%)?

【问题讨论】:

    标签: javascript char character


    【解决方案1】:

    余数运算符,用于取整数除法后的余数。很多语言都有。例如:

    10 % 3 // = 1 ; because 3 * 3 gets you 9, and 10 - 9 is 1.
    

    显然它与modulo operator 完全不同。

    【讨论】:

    • 您可以将3 恰好放入 9 中的 3 次。如果您将 3 再与 9 相加,您将得到 12。但您是在除以 10,所以您说它是 3乘以 9,余数为 1。这就是模数得到的结果。
    • 我觉得这样解释比较好:Modulo是除以一个值时剩下的差。您可以使用它来计算包含项目的列表,例如:10 % 10 给您 0。当它为 0 时,您知道列表中有 10 个项目。例如 20 % 10 给你相同的值,0,列表中的另外 10 项......
    • JS AFAIK 中没有“整数除法”运算符; 10 / 3 将导致 3.333...。您需要截断分数,例如使用Math.floor()
    • @Lucero 你是对的,我从来没有意识到这一点!我只是假设它使用了许多语言中可用的相同基本运算符。
    • @MDeSchaepmeester,嗯,它使用了与其他语言相同的基本运算符,但它缺少特定的整数原语。 JS 本身只有浮点数的“数字”原语,因此也没有纯整数运算符。
    【解决方案2】:

    那就是modulo operator,它产生两个数字相除的余数。

    【讨论】:

    • 在类 C 语言(包括 JavaScript)中,% 是余数运算符,而不是模数/模数。它们对于正值是等价的,但对于负值是不同的。
    • 否决这个答案,因为它不会为这个对话添加任何有用的东西。
    猜你喜欢
    • 2019-10-06
    • 2013-11-23
    • 2011-02-22
    • 1970-01-01
    • 2018-02-09
    • 1970-01-01
    • 2013-10-09
    • 1970-01-01
    • 2015-10-11
    相关资源
    最近更新 更多