Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/415.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么我的javascript函数只返回数组的第一项?_Javascript_Arrays_Scripting_Frontend_Web Frontend - Fatal编程技术网

为什么我的javascript函数只返回数组的第一项?

为什么我的javascript函数只返回数组的第一项?,javascript,arrays,scripting,frontend,web-frontend,Javascript,Arrays,Scripting,Frontend,Web Frontend,我是Javascript的新手,正在尝试使用它 我写了两个函数 第一个函数返回一个数字数组,第二个函数循环遍历该数组并对数组求和,但它只返回数组的第一项。为什么? function addWorth() { var table1= document.getElementById("tableNetWorths"); var rowCount1= table1.rows.length; //var row1= table1.inse

我是Javascript的新手,正在尝试使用它

我写了两个函数

第一个函数返回一个数字数组,第二个函数循环遍历该数组并对数组求和,但它只返回数组的第一项。为什么?

function addWorth()
    { 


        var table1= document.getElementById("tableNetWorths");

        var rowCount1= table1.rows.length;

        //var row1= table1.insertRow(rowCount1);


        var arr= [];


       for(var count = 0; count < rowCount1; count++)
       {    
            arr.push(table1.rows[count].cells[1].innerHTML);          
       }


       arr.shift();
       return arr;

    } 

    function showWorthSum()
    {
        var returnedArr= [];

        returnedArr.push(addWorth());

         totalWorth= 0;

        var arrCount= returnedArr.length;

        for(var count = 0; count < arrCount; count++)
        {    
             totalWorth= parseInt(totalWorth)+ parseInt(returnedArr[count]); 

        }

        return parseInt(totalWorth);
    }
函数addWorth()
{ 
var table1=document.getElementById(“tableNetWorths”);
var rowCount1=table1.rows.length;
//var row1=表1.insertRow(rowCount1);
var-arr=[];
对于(变量计数=0;计数
按钮:

 <button class="btn btn-primary" onclick="document.write(showWorthSum())" type="button">Show Sum</button>
显示总和
数组:


100200344,22122,99

这应该可以解决问题:

var returnedArr = addWorth();

这将解决问题:

var returnedArr = addWorth();


你能展示一下你的HTML表格吗?@Covert我想你想要的是var returnedArr=addWorth()@hack3rfx谢谢,但我不知道背后的原因?为什么数组变量会失败?@Covert您的addWorth函数正在返回一个数组。您正在将该数组添加到另一个数组。你想做的是分配它,而不是“推”它。你能显示一些表格HTML吗?@Covert我想你想要的是var returnedArr=addWorth()@hack3rfx谢谢,但我不知道背后的原因?为什么数组变量会失败?@Covert您的addWorth函数正在返回一个数组。您正在将该数组添加到另一个数组。您要做的是分配它,而不是“推送”它。
[[100200344,…]
vs
[100200344,…]
如果推送,您将拥有一个包含一个元素的数组。元素本身将具有返回数组的值。在循环返回数组元素时,您不需要这样做。如果您对答案进行更广泛的解释,这会更有帮助。@SamAxe但仍然[[100200344,…]]它包含我的元素,它应该已经添加或没有显示,为什么它只显示我100个?如果您仍然要按,那么
var arrCount=returnedArr[0].长度
parseInt(returnedArr[0][count])
[[100200344,…]
vs
[100200344,…]
如果您按下,您将拥有一个包含一个元素的数组。元素本身将具有返回数组的值。在循环返回数组元素时,您不需要这样做。如果您对答案进行更广泛的解释,这会更有帮助。@SamAxe但仍然[[100200344,…]]它包含我的元素,它应该已经添加或没有显示,为什么它只显示我100个?如果您仍然要按,那么
var arrCount=returnedArr[0].长度
parseInt(returnedArr[0][count])