2015-04-14 153 views
0

我有一個帶有for循環的JS函數。在嵌套for循環內,str元素打印所有預期的元素。但是,外面並沒有打印全部內容。我將不勝感激任何幫助。這裏是我的代碼:如何在JavaScript中嵌入for循環之外訪問變量

function getResearchersFullName(allDataJson){ 
    var str = []; 
    var myarr = []; 
    var c = 0; 
    for(var i = 0; i < allDataJson.length; i++){ 

     myarr[i] = allDataJson[i].Researchers.split(", "); 

     for(var j = 0; j < myarr[i].length; j++){ 
      str[c] = myarr[i][j]; 
      //console.log(str[c]); //prints as expected 
     } 
    } 

    return str; 
} 

我想按如下方式使用返回值,但它只打印其中一個str值。

var fullnames = getResearchersFullName(allDataJson); 

     for(var i = 0; i <fullnames.length; i++){ 
       console.log(fullnames[i]); //returns only 1 object 

     } 

回答

2

您的代碼永遠不會增加cstr這是有史以來修改的唯一元素是元素0.

使用str.push(myarr[i][j]);,你根本不需要c

+0

歐對。非常感謝! – supaplex

相關問題