Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 15.09.2017, 00:38
Новичок на форуме
Отправить личное сообщение для JetBlack Посмотреть профиль Найти все сообщения от JetBlack
 
Регистрация: 15.09.2017
Сообщений: 6

Как подсчитать сумму всех индексов в массиве?
man=Array(); 

man[0]=Array();
man[0][0]="30";
man[0][1]="40";
man[0][2]="50";
man[0][3]="50";
man[0][4]="40";
//---------------------------------------------------------
man[1]=Array();
man[1][0]="20";
man[1][1]="31";
man[1][2]="31";
man[1][3]="351";
man[1][4]="31";
//---------------------------------------------------------
man[2]=Array();
man[2][0]="123";
man[2][1]="123";
man[2][2]="51";
man[2][3]="190";
man[2][4]="87";
//---------------------------------------------------------
man[3]=Array();
man[3][0]="22";
man[3][1]="56";
man[3][2]="1000";
man[3][3]="220";
man[3][4]="100";


Необходимо чтобы alert выдавал общую сумму данных под номером [4] индекса.

Последний раз редактировалось JetBlack, 15.09.2017 в 00:50.
Ответить с цитированием
  #2 (permalink)  
Старый 15.09.2017, 00:52
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

man=Array(); 

man[0]=Array();
man[0][0]="30";
man[0][1]="40";
man[0][2]="50";
man[0][3]="50";
man[0][4]="40";
//---------------------------------------------------------
man[1]=Array();
man[1][0]="20";
man[1][1]="31";
man[1][2]="31";
man[1][3]="351";
man[1][4]="31";
//---------------------------------------------------------
man[2]=Array();
man[2][0]="123";
man[2][1]="123";
man[2][2]="51";
man[2][3]="190";
man[2][4]="87";
//---------------------------------------------------------
man[3]=Array();
man[3][0]="22";
man[3][1]="56";
man[3][2]="1000";
man[3][3]="220";
man[3][4]="100";

var sum=0, i = man.length;
while(i--) sum+=+man[i][4];
alert(sum);
Ответить с цитированием
  #3 (permalink)  
Старый 15.09.2017, 01:08
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

JetBlack,
зачем тип данных Number вставляете в массив как String?
Ответить с цитированием
  #4 (permalink)  
Старый 15.09.2017, 01:56
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,080


<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
</head>

<body>
<script src="https://nervgh.github.io/js/recursive-iterator.min.js"></script>
<script>
man=Array();

man[0]=Array();
man[0][0]="30";
man[0][1]="40";
man[0][2]="50";
man[0][3]="50";
man[0][4]="40";
//---------------------------------------------------------
man[1]=Array();
man[1][0]="20";
man[1][1]="31";
man[1][2]="31";
man[1][3]="351";
man[1][4]="31";
//---------------------------------------------------------
man[2]=Array();
man[2][0]="123";
man[2][1]="123";
man[2][2]="51";
man[2][3]="190";
man[2][4]="87";
//---------------------------------------------------------
man[3]=Array();
man[3][0]="22";
man[3][1]="56";
man[3][2]="1000";
man[3][3]="220";
man[3][4]="100";



      var iterator = new RecursiveIterator(man),
      sum = 0;
      for(var item = iterator.next(); !item.done; item = iterator.next()) {
          var state = item.value;
          if (state.key  == 4 && state.deep == 2 )  sum += +state.node
      }
  alert(sum)

</script>
</body>

</html>
Ответить с цитированием
  #5 (permalink)  
Старый 15.09.2017, 08:22
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,748

man=Array(); 

man[0]=Array();
man[0][0]="30";
man[0][1]="40";
man[0][2]="50";
man[0][3]="50";
man[0][4]="40";
//---------------------------------------------------------
man[1]=Array();
man[1][0]="20";
man[1][1]="31";
man[1][2]="31";
man[1][3]="351";
man[1][4]="31";
//---------------------------------------------------------
man[2]=Array();
man[2][0]="123";
man[2][1]="123";
man[2][2]="51";
man[2][3]="190";
man[2][4]="87";
//---------------------------------------------------------
man[3]=Array();
man[3][0]="22";
man[3][1]="56";
man[3][2]="1000";
man[3][3]="220";
man[3][4]="100";

alert(man.map(val=>+val[4]).reduce((c,t)=>t+=c));
//alert(man.map(function(val){return +val[4];}).reduce(function(c,t){return t+=c;}));
/*var t=0;
man.map(val=>t+=+val[4]);
alert(t);*/
/*var t=0;
man.map(function(val){return t+=+val[4];});
alert(t);*/

Последний раз редактировалось Nexus, 15.09.2017 в 08:26.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как быстро проверить есть ли в массиве нужная строка? Почемучкин Общие вопросы Javascript 15 17.08.2012 20:19
Как подсчитать количество чекбоксов ? mazaxaka jQuery 2 07.08.2012 18:02
Как изменить background всех дочерних элементов внутри <div>? libinstyle Общие вопросы Javascript 2 24.03.2010 13:25
как записать id всех элементов в массив? SunYang Общие вопросы Javascript 21 06.02.2010 22:50
Как получить список всех установленных плагинов VitAngel Internet Explorer 0 15.07.2009 09:13