Javascript计算数组中每种类型的数量
我试图计算数组“flowers”中的每种类型的花,该数组存储在外部库的数组中。有三种花,玫瑰、万寿菊和郁金香。我有一个带有按钮的html页面,当点击时,它会告诉我每个花在存储的数组中有多少。但是,我的程序在运行时不会给我计数。代码在我看来是正确的,所以我完全不知道它出了什么问题Javascript计算数组中每种类型的数量,javascript,Javascript,我试图计算数组“flowers”中的每种类型的花,该数组存储在外部库的数组中。有三种花,玫瑰、万寿菊和郁金香。我有一个带有按钮的html页面,当点击时,它会告诉我每个花在存储的数组中有多少。但是,我的程序在运行时不会给我计数。代码在我看来是正确的,所以我完全不知道它出了什么问题 document.getElementById('go').onclick = function () { roseCount = 0; marigoldCount = 0; tulipCount = 0; le
document.getElementById('go').onclick = function () {
roseCount = 0;
marigoldCount = 0;
tulipCount = 0;
lengthArray = flowers.length;
for (f = 0; f < lengthArray; f++) {
if (flowers[f] == 'rose') {
roseCount ++;
};
if (flowers[f] == 'marigold') {
marigoldCount ++;
};
if (flowers[f] == 'tulip') {
tulipCount ++;
};
document.getElementById('tulip').value = tulipCount;
document.getElementById('rose').value = roseCount;
document.getElementById('marigold').value = marigoldCount;
};
};
HTML
好的,HTML和JS一起提供是没有意义的,所以我让函数运行起来,以便您可以分析并查看错误 问题: 使用var而不是像那样定义一个变量,否则它将成为一个全局变量
var roseCount = 0;
var marigoldCount = 0;
var tulipCount = 0;
var flowers = ['rose', 'marigold', 'tulip'];
var lengthArray = flowers.length;
flowers数组甚至没有定义。我已经这样做了
var flowers = ['rose', 'marigold', 'tulip'];
当按下按钮时,我们需要计算,所以我将逻辑包装在一个名为calculate的函数中,并使用HTML调用它
<button id = 'go' class = '' onclick='calculate()'>COMPUTE</button>
请参阅下面的代码片段,并让我知道您的问题是否已解决,谢谢
此外,在外部js文件中,名称中有空格,请将其删除
函数计算{
var-rosecont=0;
var marigoldCount=0;
var TuliCount=0;
var flowers=[‘玫瑰’、‘万寿菊’、‘郁金香’];
var lengthArray=花的长度;
对于f=0;f现在还不清楚花是从哪里来的。@尖头花已经在一个外部库中创建。其中存储了三朵花。我应该只使用flowersHow。当你没有显示数组的结构并提供预期结果的示例时,有人应该提供帮助吗?请提供一个示例。你也检查了开发人员的con吗唯一的错误?URL中允许空格吗?@令人惊讶的是,你能发现测试数据吗???。现在真正聪明的一点是,如果他的程序与测试数据一起工作,你认为它与真实数据一起工作的机会有多大?。欢迎来到编程世界。@令人惊讶的是,你能解决你的问题吗?问题一定在另一个JSF文件中e数组存在…请确保数组定义正确,如上面的代码片段所示,还请确保提供一个没有空格的名称…可能源js文件不包含在HTML文件中
<button id = 'go' class = '' onclick='calculate()'>COMPUTE</button>
<input id = 'tulip' name = 'tulip' value = '' class = ''>
<input id = 'rose' name = 'rose' value = '' class = ''>
<input id = 'marigold' name = 'marigold' value = '' class = ''>