2013-05-09 3 views
2

У меня есть двумерный массив. Я пытаюсь подсчитать значения внутри внутреннего массива. Я знаю JS array.length. Но делать testData.length дает 5. Что точно. Тем не менее, я хочу подсчитать количество элементов в каждом вспомогательном массиве.Количество значений внутреннего двумерного массива - javascript

testData[0].length дал бы 6. Но как бы я динамически подсчитывал каждый вспомогательный массив? (так как это изменится).

var testData = [["column1","test1","test1","tea","party", "water bottle"], 
       ["column2","test2","test2","test2 test2"], 
       ["column3","test2","test2","test2 test2 "], 
       ["column4","test2","test2 test2f asdfsdf"], 
       ["column5","test2","test2 test2f asdfsdfasdfasdfasa asda asdfsas"] 
] 

ответ

1
var testData = [["column1","test1","test1","tea","party", "water bottle"], 
       ["column2","test2","test2","test2 test2"], 
       ["column3","test2","test2","test2 test2 "], 
       ["column4","test2","test2 test2f asdfsdf"], 
       ["column5","test2","test2 test2f asdfsdfasdfasdfasa asda asdfsas"] 
]; 
for(var i=0;i < testData.length;i++){ 
    for(var j=0;j<testData[i].length;j++){ 
    alert(testData[i][j]); 
    } 
} 
+1

Ваш внутренний цикл рассчитывает фактические символы в суб ISN массива «т Это? Определенно не нужно идти так далеко. Вместо этого я переместил 'console.log (testData [i] .length);' в первый цикл. И он дает правильные результаты. Благодарю. – EnigmaRM

0

Try добавить новое свойство объекта Array.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
<html> 
    <head> 
    <meta http-equiv="content-type" content="text/html; charset=windows-1250"> 
    <title>New Property</title> 
    <script type="text/javascript" language="JavaScript"> 
     Array.prototype.biLength = function(){ 
     numItems = 0; 
     numRows = this.length; 
     for (var i = 0; i < numRows; i++){ 
      row = testData[i]; 
      numCols = row.length; 
      for (var j = 0; j < numCols; j++){ 
      numItems++; 
      } 
     } 
     return numItems; 
     }; 
     var testData = [ 
     ["column1","test1","test1","tea","party", "water bottle"], 
     ["column2","test2","test2","test2 test2"], 
     ["column3","test2","test2","test2 test2 "], 
     ["column4","test2","test2 test2f asdfsdf"], 
     ["column5","test2","test2 test2f asdfsdfasdfasdfasa asda asdfsas"] 
     ]; 
     alert(testData.biLength()); 
    </script> 
    </head> 
    <body> 

    </body> 
</html>