Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 03.07.2017, 12:56
Кандидат Javascript-наук
Отправить личное сообщение для biryukovm Посмотреть профиль Найти все сообщения от biryukovm
 
Регистрация: 13.12.2013
Сообщений: 110

Да я посмотрел Ваш код работает, Но как мне использовать эту строчку по уму
data.push({data : new Date().toString()})

Когда у меня данные

var tovar_list = {
"tovar": p1,
"price": p2,
"tip": p3,
"sort": p4,
"massa": p5
};

Делаю data.push({data : new tovar_list}) не помогает
Ответить с цитированием
  #12 (permalink)  
Старый 03.07.2017, 13:05
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от biryukovm
как мне использовать эту строчку по уму
data.push({data : new Date().toString()})
Никак, это просто для примера. Используйте свои, но извлекая из хранилища данные, преобразовывайте их в массив/объект, и только потом работайте с ним. Неужели до сих пор не понятно?
Ответить с цитированием
  #13 (permalink)  
Старый 03.07.2017, 13:12
Кандидат Javascript-наук
Отправить личное сообщение для biryukovm Посмотреть профиль Найти все сообщения от biryukovm
 
Регистрация: 13.12.2013
Сообщений: 110

Сообщение от laimas Посмотреть сообщение
Никак, это просто для примера. Используйте свои, но извлекая из хранилища данные, преобразовывайте их в массив/объект, и только потом работайте с ним. Неужели до сих пор не понятно?
Я же сразу написал что не профи в этих делах мне с PHP легче разбраться чем с JS
Ответить с цитированием
  #14 (permalink)  
Старый 03.07.2017, 13:19
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от biryukovm
мне с PHP легче разбраться
Ну хорошо. В РНР тоже можно работать с JSON, которая и для него это строковое значение. Ваш php-сценарий получает такой json "[1,2,3]" в переменной $a. Вопрос: можно сразу получить из него значение индекса один как $a[1] или сначала нужно преобразовать json в массив - json_decode("[1,2,3]")?
Ответить с цитированием
  #15 (permalink)  
Старый 03.07.2017, 13:24
Кандидат Javascript-наук
Отправить личное сообщение для biryukovm Посмотреть профиль Найти все сообщения от biryukovm
 
Регистрация: 13.12.2013
Сообщений: 110

Сообщение от laimas Посмотреть сообщение
Ну хорошо. В РНР тоже можно работать с JSON, которая и для него это строковое значение. Ваш php-сценарий получает такой json "[1,2,3]" в переменной $a. Вопрос: можно сразу получить из него значение индекса один как $a[1] или сначала нужно преобразовать json в массив - json_encode("[1,2,3]")?
это я знаю но не могу перекидывать обработку на PHP так как уже очень много AJAX подкюючений**/*******


Я разобрался и у меня получилось использовать Ваш код под свои корректировки правильно коротко говоря вот

var tovar_list = {
"tovar": p1,
"price": p2,
"tip": p3,
"sort": p4,
"massa": p5
};


var data = localStorage.tovar_list && JSON.parse(localStorage.tovar_list) || [];
data.push(tovar_list)
localStorage.tovar_list = JSON.stringify(data);

alert(JSON.stringify(data))


Подскажите пожалуйста еще такой момент как можно удалить часть массива
А точнее полностью {"tovar": p1,"price": p2,"tip": p3,"sort": p4,"massa": p5}

Зная только данные о "tovar": p1
Ответить с цитированием
  #16 (permalink)  
Старый 03.07.2017, 13:24
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от biryukovm
Делаю data.push({data : new tovar_list}) не помогает
data.push(tovar_list)


Вот только зачем? Если есть объект, свойства которого могут изменять и который нужно хранить, зачем же его прятать в массив, храните сам объект.
Ответить с цитированием
  #17 (permalink)  
Старый 03.07.2017, 13:31
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от biryukovm
не могу перекидывать обработку на PHP так как уже очень много AJAX подкюючений
Оптимизируйте свои подключения, очень много, это очень плохо. Выбор стороны обработки данных также зависит не от того, что "у меня тут дохрена, поэтому не пойдет", а от целесообразности.

Сообщение от biryukovm
как можно удалить часть массива
Элемент массива так: https://developer.mozilla.org/ru/doc...s/Array/splice.

Вы что делаете, корзину товаров на клиенте?
Ответить с цитированием
  #18 (permalink)  
Старый 03.07.2017, 13:40
Кандидат Javascript-наук
Отправить личное сообщение для biryukovm Посмотреть профиль Найти все сообщения от biryukovm
 
Регистрация: 13.12.2013
Сообщений: 110

Сообщение от laimas Посмотреть сообщение
Оптимизируйте свои подключения, очень много, это очень плохо. Выбор стороны обработки данных также зависит не от того, что "у меня тут дохрена, поэтому не пойдет", а от целесообразности.



Элемент массива так: https://developer.mozilla.org/ru/doc...s/Array/splice.

Вы что делаете, корзину товаров на клиенте?
Типа корзины но не корзина это для менеджеров чтобы они фиксили в обработку тяжело обьяснить.

Я посмотрел метод splice() и прихожу к тому что мне надо в массиве создать ключь и в ключе иметь параметры и если надо удалить то что то удаляю я ключь с параметрами или можно по другому ?

И чуть не забыл как можно избавиться от добовления дублей в этом ммассиве предположим добавили торт 1,2,3 и пользователь опять жмет на 2 торт но он уже естькак его не добовлять ?
Ответить с цитированием
  #19 (permalink)  
Старый 03.07.2017, 13:50
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от biryukovm
в массиве создать ключь
КЛЮЧ

Нет ключей в js-массивах, так как в JS нет ассоциативных массивов, но есть объекты, в которых свойства и будут ключами ассоциации. То есть ход вашей мысли правильный, но только не массив, а объект хранящий объекты, свойствами первичного объекта которого будут уникальные идентификаторы ваших товаров или чего-то, что "фиксят" ваши менеджеры. То есть:

var data = {
    p1 : {
         price: p2,
         tip: p3,
         sort: p4,
         massa: p5
     },
     ..... 
}


если p1 и есть уникальный идентификатор. Такое хранение решит и проблему дубликатов.

Последний раз редактировалось laimas, 03.07.2017 в 13:54.
Ответить с цитированием
  #20 (permalink)  
Старый 03.07.2017, 14:01
Кандидат Javascript-наук
Отправить личное сообщение для biryukovm Посмотреть профиль Найти все сообщения от biryukovm
 
Регистрация: 13.12.2013
Сообщений: 110

Сообщение от laimas Посмотреть сообщение
КЛЮЧ


если p1 и есть уникальный идентификатор. Такое хранение решит и проблему дубликатов.
А как перепроверку сделать на существование ил на перезапись ?
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывод JSON Объекта из localStorage Философ Общие вопросы Javascript 36 12.09.2015 11:32
Удаление / добавление JSON Alexander Belov Events/DOM/Window 16 01.05.2015 23:51
Не могу распарсить JSON. gorenie jQuery 3 29.11.2013 22:26
JSON или JSONP для запросов на другой сервер? Метод GET, для длинных сообщений? Kotakota jQuery 5 23.08.2011 23:12
jQuery. Обработка ошибок и JSON. mma_mma jQuery 3 19.07.2010 12:10