Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.05.2008, 10:52   #1
mager
Пользователь
 
Регистрация: 12.11.2006
Сообщений: 57
Вопрос работа с массивами

Народ возникла такая надобность, без этого никак, все варианты перепробывал. есть 1 масив, состоящий из элементов, допустим 21 элемент. Можно ли из этого массива сделать другой массив, да так чтобы, его элементы состояли из 4 частей раздёлённых между собой "-" , а последняя часть состояла из 1 элемента, т.к. 21 не кратно 4.
Пример:
Исходный массив: (1,2,3,4,5,6,7,8,9,10,11,12,13,14,1 5,16,17,18,19,20,21)
Должно получиться следующее: (1-2-3-4,5-6-7-8,9-10-11-12,13-14-15-16,17-18-19-20,21).
Может кто сталкивался с подобным, есть ли в js аналог foreach? потому как без перебора тяжело будет да и общее колличество элементов массива знать надо бы, но в js я не силен, а делать надо имено в нем. Может подскажет кто, ссылку на статейку хорошую скинет или ещё как-то буду очень признателен. Заранее спасибо
Незнание человека не повод, чтобы над ним издеваться или смеяться, все мы чего-то не знали или не знаем...
mager вне форума Ответить с цитированием
Старый 21.05.2008, 12:52   #2
Tokolist
Пользователь
 
Аватар для Tokolist
 
Регистрация: 04.09.2007
Сообщений: 19
По умолчанию

http://www.javascriptkit.com/jsref/arrays.shtml
Tokolist вне форума Ответить с цитированием
Старый 04.07.2008, 14:03   #3
Timpi
Пользователь
 
Аватар для Timpi
 
Регистрация: 20.10.2007
Сообщений: 29
По умолчанию

Для начала поконкретнее тему называть надо, например "Подскажите как работать с массивами".
Потом не понятно, что такое 1-2-3-4,5-6-7-8,9-10-11-12,13-14-15-16,17-18-19-20,21 ? Двухмерный массив 4xN или одномерный в котором элементы принимают значения: "1-2-3-4","5-6-7-8",...
А вот размер массива можно узнать просто: имя_массива.length (массивы нумеруются с 0 до имя_массива.length-1).
Перебор осуществить так: for (i=0; i<имя_массива.length; i++){операции}

Последний раз редактировалось Timpi; 04.07.2008 в 15:35.
Timpi вне форума Ответить с цитированием
Старый 04.07.2008, 21:32   #4
Romanbl4
Форумчанин
 
Аватар для Romanbl4
 
Регистрация: 20.06.2007
Сообщений: 144
По умолчанию

Код:
//.... где то тут формируется твой массив из 21 элемента и называться он будет in_array;
var a = new Array();
var j = 0;
var k = 0;
a[0] = "";
for (i = 0; i < in_array.length; i++)
{
if (k = 4)
{
k = 0;
j++;
a[j] = "";
}
a[j] += "-"+in_array[i];
k++;
}
Romanbl4 вне форума Ответить с цитированием
Старый 27.08.2008, 12:50   #5
Tokolist
Пользователь
 
Аватар для Tokolist
 
Регистрация: 04.09.2007
Сообщений: 19
По умолчанию

2 Romanbl4
Код:
var arr1 = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21];
var arr2 = [];

for(var i = 0; i < arr1.length; i += 4) {
  arr2.push(arr1.slice(i, i + 4).join('-'));
}
Tokolist вне форума Ответить с цитированием
Старый 27.08.2008, 22:02   #6
Romanbl4
Форумчанин
 
Аватар для Romanbl4
 
Регистрация: 20.06.2007
Сообщений: 144
По умолчанию

2 Tokolist
Кому как удобнее Может это потому что я с turbo pascal программирование начинал

зы. Долго искал на какую тему ответить?
Romanbl4 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с массивами Stelix Паскаль, Turbo Pascal, PascalABC.NET 1 20.06.2008 11:37
Работа с массивами в C# MaskEdit Общие вопросы .NET 3 17.05.2008 17:59
Работа с массивами rexec Microsoft Office Excel 12 21.04.2008 13:29
Работа с массивами Hakman Общие вопросы C/C++ 1 19.02.2008 15:11
Работа с массивами DeN1308 Помощь студентам 3 09.11.2007 11:50