javascript - JavaScript 中的任务
问题描述
我需要使用while
或for
由数字符号的总和组成的数字序列。
例如,我有一个从 1 到 10 的序列。在控制台中(如果我已经编写了代码)将只有 1、2、3、4、5、6、7、8、9、1。如果我在控制台中从 30 到 40 将是 3,4,5,6,7,8,9,10,11,12,13。
我需要创建一个代码来显示从 1 到 100 的总和。我不知道该怎么做,但在控制台中我需要查看:
1
2
3
4
5
5
6
7
8
9
1
2
3
4
等等
我有一些代码,但我只有 NaN。我不知道为什么。你能给我解释一下吗?
for (let i = '1'; i <= 99; i++) {
let a = Number(i[0]);
let b = Number(i[1])
let b1 = Boolean(b)
if (b1 == false) {
console.log ('b false', a)
}
else {
console.log ('b true', a + b)
}
}
我希望你明白我在说什么。
解决方案
尽管我喜欢接受的答案,但是从问题中我了解到您在问别的问题,那就是;
30 become 3+0=3
31 become 3+1=4
37 becomes 3+7=10
为什么我们要检查布尔值超出了问题的范围
这是简单的 snnipet 完全符合您的要求
for (let i = 30; i <= 40; i++) {
let x=i.toString();
console.log( 'numbers from ' +i + ' are added together to become '+ (Number(x[0])+Number((x[1])||0)))
}
er 所做的正是 Maskin 所说的,以 for 循环开头,然后在每个增量中将其转换为字符串,以便我们可以拆分它,这可以解决 NAN 问题。您不需要调用字符串,只需像在 let x 中那样执行一次,然后只需将拆分称为 x[0] 等等。
在第二个数字内,我们创建了一个自计算 (x[1])||0),即如果没有第二个值,则为零。以下会像魅力一样工作
for (let i = 1; i <= 10; i++) {
let x=i.toString();
console.log( 'numbers from ' +i + ' are added together to become '+ (Number(x[0])+Number((x[1])||0)))
}
这是我真正的问题和解决方案,如果您不知道数字的长度或出于什么原因您要从 100 岁开始盯着看怎么办。我们需要在代码中加入某种形式的 AI
for (let i = 110; i <= 120; i++) {
let x= Array.from(String(i), Number);
console.log(
x.reduce(function(a, b){ return a + b;})
);
};
您只需使用 Array.from 函数创建一个数组,然后使用简单的 Array.reduce 函数运行自定义函数,将所有值加起来为总和,最后在控制台中运行。
不错,简单,人工智能
推荐阅读
- sql - 如何将行插入到具有自动递增的外键的表中,而无需对父表进行多次查询
- r - R使用带有循环的变异进行变量比较
- api - 有什么方法可以使用 Azure DevOps Rest API 针对任何/多个事件类型创建订阅?
- php - Yii2 - wrong order of loaded CSS - extension's CSS breaks the layout
- python-3.x - merging multiple columns into one column
- javascript - 单击按钮 1 周后不显示横幅?
- function - 依赖顺序验证的设计模式
- python - a dynamic dataframe range
- xml - Resharper - Format
- python - Total sum of a list of numbers with list iteration