计算一个数字出现多少次,比前一个数字少一个

我有巴巴卡泽

码:

function OneDecremented(num) { 
num = num.toString()
var count = 0

for(i = 1; i < num.length; i++) {
  if(num[i - 1] - num[i] === 1){
    count++
  }
}
return count

}
console.log(OneDecremented(9876541110))

所以我在努力理解两件事:

  1. i和num [i]有什么区别
  2. 我不知道if语句中的计算方式如何,有人可以分解吗?

抱歉,如果这些问题听起来太愚蠢,我是JS的新手,无法真正理解算术计算。谢谢您的时间。

安德里亚·贾玛基(Andrea Giammarchi)

该代码编写不当是出于几个原因,但最重要的是,它会i全局泄漏引用,因此,让我们从一个更好的版本开始:

function OneDecremented(num) {
  var str = num.toString();
  var count = 0;
  for(var i = 1; i < str.length; i++) {
    if(str[i - 1] - str[i] === 1)
      count++;
  }
  return count;
}

在现代JS中,字符串可以像数组一样进行访问,并且索引在以下index位置返回char

if(str[i - 1] - str[i] === 1)
// is the same as
if ((str.charAt(i - 1) - str.charAt(i)) === 1)

检索到每个字符后,由于操作员的缘故,该代码执行了隐式的“字符到数字”转换,-但是如果+不是,它将把两个字符串联为字符串(因此请小心)。

明确一点总是更好,但是如果您知道如何-工作,它将完成此任务。

循环从开始1,并检查at处的char i - 1,它是第一次迭代中index处的char0减去当前char,即1当前char小于上一个char

在这种情况下,计数器会求和。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

一个数字出现多少次

来自分类Dev

计算一个值在这个数组中出现多少次?

来自分类Dev

计算一个字符串中出现了多少个数字

来自分类Dev

一个数字的数字总和

来自分类Dev

如果数字与前一个数字匹配,则生成一个随机数字

来自分类Dev

计算一个数组中的数字出现在另一个数组中的次数

来自分类Dev

计算一个静态数字适合另一个数字的次数

来自分类Dev

一个数字的总和

来自分类Dev

VBScript猜一个数字

来自分类Dev

最后一个数字

来自分类Dev

如何选择一个数字?

来自分类Dev

VBScript猜一个数字

来自分类Dev

多次减去一个数字

来自分类Dev

我怎样才能得到一个数组中的一个元素在另一个数组中存在多少次?

来自分类Dev

从两列中选择一个数字并计算

来自分类Dev

计算函数低于一个数字的时间

来自分类Dev

如何计算列表中一个数字的数量

来自分类Dev

如果一个数字小于循环中的前一个数字,如何打印出一个数字?

来自分类Dev

一个数字与一个数字数组之差的总和

来自分类Dev

从PHP中的另一个数字中提取一个数字

来自分类Dev

递归:求和一个数字,直到剩下一个数字

来自分类Dev

计算一个值在Excel的列中出现多少次?

来自分类Dev

计算一个数字出现在随机数组中的次数

来自分类Dev

如何计算一个数字出现在数组中的次数

来自分类Dev

输入一个数字,不是数字,请重试

来自分类Dev

元组一个数字与数字列表python

来自分类Dev

查找所有均分一个数字的数字

来自分类Dev

从数字数组中获取一个数字

来自分类Dev

编写一个程序对2个数字求和