Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Сложение строковых переменных (https://javascript.ru/forum/dom-window/56829-slozhenie-strokovykh-peremennykh.html)

nika89 06.07.2015 04:07

Сложение строковых переменных
 
Здравствуйте.
Подскажите пожалуйста, как правильно сложить текстовые переменные, или может как-то преобразовать, что бы результат был как в примере ниже:

var01 = ["январь", "февраль", "март"];  
var random = var01[Math.floor(Math.random() * var01.length)];
document.write(random);

В этом примере результатом будет вывод случайного месяца из диапазона.

А вот в этом примере загвоздка со сложением. Сами строки складываются, но в результате выводится просто случайный символ из всей строки, в том числе пробел или запятая.
var01 = ["январь", "февраль", "март"];        
var02 = ["апрель", "май", "июнь"];
var03 = var01 + var02;
var random = var03[Math.floor(Math.random() * var03.length)];
document.write(random);


Помогите пожалуйста правильно сложить две текстовые переменные и решить эту задачу. :help:

Deff 06.07.2015 05:25

У Вас var01 var02 - не строчные переменные(Их нун преобразовать в строки, сложить,
затем обратно в массив с шестью переменными)
var03 = (var01.toString() + var02.toString()).split(',');

Проверьте
var01 = ["январь", "февраль", "март"];        
var02 = ["апрель", "май", "июнь"];
alert('var01 ='+typeof var01)
alert('var02 ='+typeof var02)

kostyanet 06.07.2015 05:54

Это значит на js оператор + не сливает два массива в один как на php это делается. Используйте .concat() https://developer.mozilla.org/en/doc...s/Array/concat

nika89 06.07.2015 06:03

Deff
kostyanet
Спасибо за помощь и разъяснение, оба решения отлично подходят! :dance:


Часовой пояс GMT +3, время: 13:52.