Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 26.02.2014, 09:57
Аватар для utb
utb utb вне форума
Аспирант
Отправить личное сообщение для utb Посмотреть профиль Найти все сообщения от utb
 
Регистрация: 26.10.2011
Сообщений: 94

Вывод списка по количеству переменных
Здравствуйте,
Как можно решить следующую задачу:
В переменные попадает строка с информацией (если она есть), при этом необходимо вывести только первые 5 строки (может быть только 1 строка с информацией, остальные пустые), остальные (если строк оказалось > 5 ) записать в переменную и например вывести в другом месте.
Ответить с цитированием
  #2 (permalink)  
Старый 26.02.2014, 13:58
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,123

utb, тут бэ, кагбэ по-русски это прочитать...
Ответить с цитированием
  #3 (permalink)  
Старый 26.02.2014, 14:51
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

ksa,
Ответить с цитированием
  #4 (permalink)  
Старый 26.02.2014, 15:17
Аватар для utb
utb utb вне форума
Аспирант
Отправить личное сообщение для utb Посмотреть профиль Найти все сообщения от utb
 
Регистрация: 26.10.2011
Сообщений: 94


Сейчас попробую:
есть характеристики товара: вес, стоимость и т.д.
У разных товаров разное количество заполненных характеристик.
Мне надо вывести только первые 5 характеристик в блок, остальные в другой блок.
Понятнее стало?

var a = "12кг";
var b = "10 мин";
var c = null;
var d = "бла бла";
var e = "бла бла 1";
var j = "бла бла 1";

/* добавляем разные плюшки к переменным, приводим в читабельный вид и т.д.*/

var str1 = a + b + d // надо вывести только существующие первые 3
var str2 = e+j; // остальные в др переменную

addToHTml(id,str); // функция вставляет в html
addToHTml(id2,str2); // функция вставляет в html
Ответить с цитированием
  #5 (permalink)  
Старый 26.02.2014, 15:25
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

utb,
забейте все данные в массив разрешьте по индексу 3 на два массива -- в каждом уберите ячейки без данных и выведите в нужное место.
Ответить с цитированием
  #6 (permalink)  
Старый 26.02.2014, 15:36
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

utb,
или так
var a = "12кг";
var b = "10 мин";
var c = null;
var d = "бла бла";
var e = "бла бла 1";
var j = "бла бла 1";
function sort()
{  var str1 = '',str2 = '';
   for (var i=0; i< arguments.length; i++)  {
     i < 3 && arguments[i] && (str1 += arguments[i]);
     i >= 3 && arguments[i] && (str2 += arguments[i]);
   }
   return [str1,str2]
}
alert(sort(a, b, c, d, e, j).join('\n'))
Ответить с цитированием
  #7 (permalink)  
Старый 26.02.2014, 15:37
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,123

Сообщение от рони
забейте все данные в массив
Или в объект... Т.о. можно делать массив объектов/товаров...
Ответить с цитированием
  #8 (permalink)  
Старый 27.02.2014, 11:23
Аватар для utb
utb utb вне форума
Аспирант
Отправить личное сообщение для utb Посмотреть профиль Найти все сообщения от utb
 
Регистрация: 26.10.2011
Сообщений: 94

рони,
спасибо, но получается немного не то, если вывести только str1, то выведет "12кг10 мин", а должно выводить первые три существующие свойства, т.е. пустые свойства надо пропускать.
В цикле использовать условия? или лучше проверку всех аргументов сделать ?

з.ы.
можно так, как вариант?
var a = "12кг";
var b = "10 мин";
var c = null;
var c1 = "";
var d = "бла бла";
var e = "бла бла 1";
var j = "бла бла 1";
function sort()
{  var str1 = '',str2 = '';
var num = 3;
   for (var i=0; i< arguments.length; i++)  {
if(arguments[i]) {
     i < num && arguments[i] && (str1 += arguments[i]);
     i >= num && arguments[i] && (str2 += arguments[i]);
} else {
num++;
}
   }
   return str1;
}
var test = sort(a, b, c, c1, d, e, j);
alert(test);


з.ы.ы. а как сделать запускающийся код?

Последний раз редактировалось utb, 27.02.2014 в 11:38.
Ответить с цитированием
  #9 (permalink)  
Старый 27.02.2014, 12:05
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

Сообщение от utb
i < num && arguments[i] && (str1 += arguments[i]);
двойная проверка - можно убрать

Сообщение от utb
как сделать запускающийся код?
[JS run][/JS]

Пожалуйста, отформатируйте свой код!

Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
[js]
... ваш код...
[/js]


О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.
Ответить с цитированием
  #10 (permalink)  
Старый 27.02.2014, 12:11
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

utb,
var a = "12кг";
var b = "10 мин";
var c = null;
var c1 = "";
var d = "бла бла";
var e = "бла бла 1";
var j = "бла бла 1";
function sort()
{  var str1 = '',str2 = '';
var num = 0;
   for (var i=0; i< arguments.length; i++)  {
if(arguments[i]) {
     num < 3  && (str1 += arguments[i]);
     num >= 3  && (str2 += arguments[i]);
     num++;
}
   }
   return [str1,str2];
}
var test = sort(a, b, c, c1, d, e, j);
alert(test[0]);
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывод ниспадающего списка StudentDanil Общие вопросы Javascript 4 20.05.2013 18:24
Не работает скрипт отображения списка Konstantine Javascript под браузер 3 18.03.2013 06:00
вывод информации из выпадаюшего списка alerzo Events/DOM/Window 2 27.01.2013 21:22
Вывод переменных MasterHrust Javascript под браузер 4 03.08.2011 15:41
вывод списка файлов KonstantinV Events/DOM/Window 10 23.11.2009 10:30