如何在 JavaScript 中计算负整数的模?

2024-01-17

我试图通过递增或递减 1 来迭代 jQuery 对象数组。因此,对于递减部分,我使用以下代码:

var splitted_id = currentDiv.attr('id').split('_');
var indexOfDivToGo = parseInt(splitted_id[1]);
indexOfDivToGo = (indexOfDivToGo-1) % allDivs.length;
var divToGo = allDivs[indexOfDivToGo];

所以我有 4 个带有 id 的元素:

div_0
div_1
div_2
div_3

我期待它迭代为 3 - 2 - 1 - 0 - 3 - 2 - 等等..

但它在零之后返回-1,因此它被卡住了。所以它迭代为:

3 - 2 - 1 - 0 - -1 - 卡住

我知道我可以通过将代码的第二行更改为来修复它

indexOfDivToGo = (indexOfDivToGo-1 + allDivs.length) % allDivs.length;

但我想知道为什么 JavaScript 不计算负模。也许这也会对另一个程序员有所帮助。


你可以试试这个:p-

Number.prototype.mod = function(n) {
    return ((this % n) + n) % n;
}

查看this http://javascript.about.com/od/problemsolving/a/modulobug.htm

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 JavaScript 中计算负整数的模? 的相关文章

随机推荐

  • Java,循环结果集

    在Java中 我有一个这样的查询 String querystring1 SELECT rlink id COUNT FROM dbo Locate GROUP BY rlink id 表 rlink id 有以下数据 Sid lid 3
  • 迭代WPF Datagrid中的所有单元格[重复]

    这个问题在这里已经有答案了 可能的重复 WPF DataGrid 如何在 DataGrid 中迭代以获取行和列 https stackoverflow com questions 1295023 wpf datagrid how do yo
  • Tailwind css,如何设置默认字体颜色?

    我在我的项目中使用 tailwind css 由于我们的应用程序样式 我们使用默认字体颜色 但是我似乎找不到如何在 tailwind 中执行此操作 文档 https tailwindcss com docs text color页面只讨论了
  • Prolog 是否有像 Common Lisp 一样的条件和重启系统?

    Common Lisp 允许异常处理条件并重新启动 http www gigamonkeys com book beyond exception handling conditions and restarts html 粗略地说 当函数抛
  • 解析线性方程的系数

    在java中 我试图找到线性方程的系数 以在我的计算器应用程序中找到线性方程的解 例如 3x 2 6x 3 2 4x 我渴望得到的是 x 的系数和形式的常数ax b 0 在这个特定的例子中 coefficient 19 constant 8
  • 将内存中的 HTML 保存到 S3 AWS Python Boto3

    import boto3 from io import StringIO s3 boto3 client s3 display Altair Charting buff StringIO display save str obj html
  • 如何启动 Matlab 分析器

    我切换到 Matlab 2012b 从 2011a 但未能找到如何在新的 matlab gui 中启动分析器 gui GUI 选项仍然存在 在编辑器选项卡中 一旦函数崩溃 您将能够指定输入参数
  • 我们可以向 super() 传递什么参数?

    我创建了一个Vehicle类并且还想有一个Car从它派生的类调用父构造函数来设置name and color 但是我收到这个错误 super takes at least 1 argument 0 given 这是我的代码 class Ve
  • Promise 构造函数的返回值

    考虑下面两个例子 TEST 1 function test1 return new Promise function return 123 test1 then function data console log DATA data ret
  • 如何取消合并单元格 EPPlus?

    我正在尝试根据表列的数量取消合并并重新合并更短或更长的范围 我使用了下面的代码 但它似乎不起作用 tableSheet Cells C1 J1 Merge false 任何帮助将不胜感激 您运行的是 EPP 4 0 1 吗 如果是这样 则这
  • 一个属性可以访问另一个属性吗?

    我刚刚接触Python 这是一个关于类的逻辑和实现的非常普遍的问题 我对这个问题的基本水平表示歉意 但希望它对其他人也有用 这里有一些上下文可以使它更清楚 Context 我想创建一个代表图像的类 该图像包括 3 个波段 R G B 与 3
  • 从udf访问hdfs文件

    我想通过 udf 调用访问文件 这是我的脚本 files LOAD docs in USING PigStorage AS id stopwords id2 file buzz FOREACH files GENERATE pigbuzz
  • 依赖下拉框 CakePHP 3

    我创建了一个国家 城市和客户表 我试图确保当我从下拉列表中添加新客户时 我可以选择一个国家 然后选择与该国家 地区相关的城市 目前我无法从下拉列表中选择任何城市和国家 地区组合 这是我的数据库 CREATE TABLE IF NOT EXI
  • MySql 全天候查询结果

    我需要获取一天中所有时间的数据 即使计数为 0 现在它输出 clicks hour 1 7 2 13 我现在的查询 SELECT count as clicks hour time as hour FROM clicks WHERE DAT
  • DOM 中相邻的文本节点可以用 Javascript 合并吗?

    假设我在网页 DOM 中有一个句子 当我检查它时 它由 3 个文本节点组成 后跟一些元素 例如粗体或斜体 我想将文本节点合并为一个文本节点 因为相邻的文本节点是没有意义的 没有理由拥有它们 有没有办法轻松合并它们 谢谢 看起来Node no
  • JPA OneToOne 关联,其中 2 个实体使用复合主键但使用不同的列名称?

    我们正在尝试将 Hibernate 与数据库一起使用 该数据库使用lot复合键的使用一直让我们很头疼 不幸的是 我们无法更改架构 因此我们必须在字段之间进行大量额外的映射 我们仅限于使用 JPA 1 0 和 Hibernate 3 3 最大
  • WooCommerce 中特定单个产品页面的附加自定义按钮

    在 WooCommerce 中 需要创建另一个按钮 该按钮重定向到特定产品页面当前 添加到购物车 按钮下方的 联系我们 表单 例如 http offers elements com sg product ha power dose faci
  • 具有“加权”边缘的 Ford-Fulkerson 算法

    福特 福尔克森是否有任何变体可以在边缘增加额外的 重量 尺寸 我的意思是 某些边缘比其他边缘更理想 尽管存在所有可能性 但它会优先考虑理想边缘而不是不太理想的边缘 据我所知 增加权重有两种常见的概括 最小成本流 假设您对每条边都有一个权重
  • 将 $or 与 $elemMatch 和数组外部的条件一起使用

    我的基本结构是我有一个 User 对象和一个包含 subjectId 和每小时价格的会话对象 User defaultHourly Number subjects id String hourly Number 我这样使用 elemMatc
  • 如何在 JavaScript 中计算负整数的模?

    我试图通过递增或递减 1 来迭代 jQuery 对象数组 因此 对于递减部分 我使用以下代码 var splitted id currentDiv attr id split var indexOfDivToGo parseInt spli