0

我正在尝试将一些数值添加到数组中,然后显示数组项(在 Javascript 中)。

当我在文本框中输入 222 并单击 add 然后 show 。我想连续显示每个数组项。

但表格显示 222 Like :

截屏

问题是什么 。这是 mj Javascript 代码:

function display()
{
    for(var i in array)
    {   
        document.getElementById("show").innerHTML+=parseFloat(array[i])+"<br>";
    }
    alert(array.length);
}

警报显示:3

插入代码:

function add()
{
    var nevalue=document.getElementById("adad").value;
    array+=parseFloat(nevalue);

    document.getElementById("adad").value="";
    document.getElementById("show").innerHTML="";
}
4

2 回答 2

0

您没有以正确的方式访问数组。

var arr = new Array(); 
// or 
var arr = [];
function add()
{
 var nevalue=document.getElementById("adad").value;
 arr.push(parseFloat(nevalue));

 document.getElementById("adad").value="";
 document.getElementById("show").innerHTML="";

}

function display()
{
  for(var i=0; i<arr.length; i++)
  {   
     document.getElementById("show").innerHTML+=parseFloat(arr[i])+"<br>";
  }
  alert(arr.length);
}
于 2013-07-22T20:13:31.850 回答
0

您不能将元素添加到带有+=. 尝试这样做的结果是以前保存数组的变量现在包含一个字符串。然后,当您认为您正在遍历数组时,您正在遍历字符串中的字符。

http://jsfiddle.net/mtg2J/

var arr = [];

arr+="abc";

alert(typeof arr);  // alerts 'string'

这相当于:

var arr = [];

arr = arr + "abc";  // the + is string concatenation, making the result a string.
于 2013-07-22T20:19:19.917 回答