Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 10.05.2016, 18:21
Профессор
Отправить личное сообщение для Blondinka Посмотреть профиль Найти все сообщения от Blondinka
 
Регистрация: 21.03.2014
Сообщений: 173

.join('') не работает
Добрый день.

Подскажите, пожалуйста, аналог .join(''), чтоб удалял все запятые с массива.
http://jsfiddle.net/wy8X9/230/
При переносе в index.html на компьютере, также не работает.
С одинарными или с двойными кавычками не работает.
.replace(/,/, "") || .replace(",", ""); - не работает

Спасибо.
Ответить с цитированием
  #2 (permalink)  
Старый 10.05.2016, 18:31
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

join не удаляет, а объединяет, и все работает:

var colors = ["9", "a", "b", "c", "d", "e", "f"];
alert(colors.join(''))


.replace(/,/, "") || .replace(",", "") - к массиву, это глупость конечно, то что массив записан как ["9", "a", ...] совсем не означает, что в нем есть запятые, это всего лишь синтаксис описания массива. Тем более .push() вообще не имеет ввиду расставлять запятые в массиве. Массив, это данные в отведенной области, которые находятся под смещениями, определенными индексами массива.

Для оперирования цветом лучше подходят цветовые модели HSB/HLS, проще задать цвет, получить диапазон цвета. А конвертировать полученное можно без проблем и в hex-представление, да и не обязательно оно, цвет в html можно задавать и как rgb(значения цветовых компонент).

Последний раз редактировалось laimas, 10.05.2016 в 18:47.
Ответить с цитированием
  #3 (permalink)  
Старый 10.05.2016, 18:53
Профессор
Отправить личное сообщение для Blondinka Посмотреть профиль Найти все сообщения от Blondinka
 
Регистрация: 21.03.2014
Сообщений: 173

laimas,
Сообщение от laimas Посмотреть сообщение
join не удаляет, а объединяет, и все работает:

var colors = ["9", "a", "b", "c", "d", "e", "f"];
alert(colors.join(''))
Но, почему тогда, в моём коде это не работает? В то время, как отдельно, мы видим 9abcdef, в коде - или с запятыми, или не работает, вообще?
Ответить с цитированием
  #4 (permalink)  
Старый 10.05.2016, 18:56
Профессор
Отправить личное сообщение для Blondinka Посмотреть профиль Найти все сообщения от Blondinka
 
Регистрация: 21.03.2014
Сообщений: 173

Это программа для генерации пастельных тонов (нежных, не ярких, чтоб можно было сделать фоном страницы).
Ответить с цитированием
  #5 (permalink)  
Старый 10.05.2016, 19:05
Профессор
Отправить личное сообщение для Blondinka Посмотреть профиль Найти все сообщения от Blondinka
 
Регистрация: 21.03.2014
Сообщений: 173

Получилось!
http://jsfiddle.net/wy8X9/231/
Сделала переменную строкой, раз массив не хочет работать.
Ответить с цитированием
  #6 (permalink)  
Старый 10.05.2016, 19:49
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от Blondinka
Но, почему тогда, в моём коде это не работает?
Потому, что вы в массив colorSet добавляете не каждую компоненту как нужно:

generator.colorSet.push(generator.colors[i], generator.colors[j], generator.colors[k]);


а массив компонентов:

generator.colorSet.push([generator.colors[i],generator.colors[j], generator.colors[k]+"\n"]);


да еще завершением перевода строки (! )

Если выбросить мусор (+"\n"), то результатом будет не

[элемент, элемент, элемент]

а

[[элемент, элемент, элемент]]

чего тут соединять будет join?
Ответить с цитированием
  #7 (permalink)  
Старый 10.05.2016, 20:52
Профессор
Отправить личное сообщение для Blondinka Посмотреть профиль Найти все сообщения от Blondinka
 
Регистрация: 21.03.2014
Сообщений: 173

Спасибо, laimas
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
JS: работает на сервере, не работает из папки -majestic- Общие вопросы Javascript 2 02.08.2012 14:41
Не работает push! Динамическая вставка TSEH25 ExtJS 5 03.07.2012 13:00
jQyery функция странно работает! Midel Общие вопросы Javascript 4 08.04.2012 13:40
помогите найти ошибку (работает в IE но не работает в Firefox) Len4ik Javascript под браузер 2 11.05.2010 15:41
Safari + ajax некорректно работает, а в других работает demi AJAX и COMET 35 15.07.2009 14:11