我的任务:有一个输入,其中数字以逗号分隔;按钮将总和输出到DOM上。
我不知道从哪里开始。我认为我所拥有的至少在某种程度上是一个良好的开端......但在搜索网络和堆栈溢出之后,我还没有提出任何其他想法。
我想使用一个数组。另外,一位教授指出,我最初开始时首先添加一个班级("类计算{...})是我可以使用的方法,但是我已经偏离了它。目前还不确定我是否需要重新开始。
HTML
<input id="numbers">
<input type="button" onclick="calculate()" value="click">
<div id="output"></div>
打字稿
function calculate(){
var numbersinput:HTMLInputElement =
<HTMLInputElement>document.getElementById('numbersinput');
var numbers:number[] = [parseFloat(numbersinput.value)];
var sum = 0;
for(var i:number = 0; i, numbers.length; i++){
console.log(numbers[i]);
sum += numbers[i];
}
var outputElement:HTMLDivElement =
<HTMLDivElement>document.getElementById('output');
outputElement.innerHTML = sum.toString();
}
答案 0 :(得分:1)
如果我理解正确,则numbersinput变量将具有以逗号分隔的数字列表(即&#34; 3.0,2,1.3和#34;)。如果是这种情况,您可以使用String.prototype.split将数字转换为数组。
一旦你有一个数组中的数字,你可以循环运行它们并加总它们(如果你想要一个挑战,也可以看Array.prototype.reduce。)
在尝试将数字添加到总和之前,您可能需要验证数组中的每个数字是否有效。您可以使用Number将字符串转换为数字,然后使用isNaN确定数字是否有效,然后再将其添加到总和中。
这应该就是你所需要的,我故意遗漏了代码,所以你必须自己解决这个问题。
答案 1 :(得分:0)
我认为问题是数组中的数字类型是字符串,因此使用{'mappings':
[{'assembly_name': 'GRCh37', 'start': 140534409, 'strand': -1, 'coord_system': 'chromosome', 'seq_region_name': '7', 'gap': 0, 'end': 140534615, 'rank': 0},
{'assembly_name': 'GRCh37', 'start': 140508692, 'strand': -1, 'coord_system': 'chromosome', 'seq_region_name': '7', 'gap': 0, 'end': 140508795, 'rank': 0},
{'assembly_name': 'GRCh37', 'start': 140507760, 'strand': -1, 'coord_system': 'chromosome', 'seq_region_name': '7', 'gap': 0, 'end': 140507862, 'rank': 0},
{'assembly_name': 'GRCh37', 'start': 140501212, 'strand': -1, 'coord_system': 'chromosome', 'seq_region_name': '7', 'gap': 0, 'end': 140501360, 'rank': 0},
{'assembly_name': 'GRCh37', 'start': 140500242, 'strand': -1, 'coord_system': 'chromosome', 'seq_region_name': '7', 'gap': 0, 'end': 140500281, 'rank': 0}]
}
运算符实际上是连接它们,所以您可能需要先投射并检查它们。
+=