Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 09.06.2014, 12:59
Интересующийся
Отправить личное сообщение для frenzy Посмотреть профиль Найти все сообщения от frenzy
 
Регистрация: 07.03.2013
Сообщений: 25

Подскажите инструменты для работы с JSon или строками.
У меня есть такой JSon, передающийся в куке msOrder:
{
    "recipient_first_name": "Олджфыва",
    "recipient_last_name": "Ощфыв",
    "recipient_phone": "+74952211211",
    "recipient_comment": "",
    "deliverypoint_street": "пер Орликов",
    "deliverypoint_house": "1",
    "deliverypoint_index": "107078",
    "recipient_email": "jklasdf@jklsdf.ru",
    "deliverypoint_flat": "46",
    "order_payment_method": 1,
    "order_items": [
        {
            "orderitem_name": "Canon LEGRIA HF M56",
            "orderitem_quantity": 1,
            "orderitem_cost": 20990
        },
        {
            "orderitem_name": "Canon LEGRIA HF R56",
            "orderitem_quantity": 1,
            "orderitem_cost": 15490
        },
        {
            "orderitem_name": "накладка Diesel для iPhone 5",
            "orderitem_quantity": 1,
            "orderitem_cost": 1390
        }
    ],
    "order_weight": 1.2000000000000002,
    "order_length": 10,
    "order_width": 10,
    "order_height": 2,
    "deliverypoint_city": "Москва",
    "order_delivery_cost": 235,
    "delivery_delivery": 149,
    "delivery_direction": 40,
    "delivery_price": 37680,
    "delivery_pickuppoint": 0,
    "delivery_to_ms_warehouse": 0
}


Задача перед тем, как он будет использован скриптом его породившим, перепаковать его еще в 2 других формата и так же отправить в другие сервисы:
1)
<script type="text/javascript">
function rrAsyncInit() {
    try {
        rrApi.order({
            transaction: <transaction_id>,
            items: [
                { id: <product_id>, qnt: <quantity>,  price: <price>},
                { id: <product_id>, qnt: <quantity>,  price: <price> }
            ]
        });
    } catch(e) {}
}
</script>


2) Я.Метрика:
var yaParams = {
  order_id: "12345",
  order_price: 123.45, 
  currency: "RUR",
  exchange_rate: 1,
  goods: 
     [
        {
          id: "1", 
          name: "наименование товара", 
          price: 100,
          quantity: 1
        } 
      ]
};

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

JS я знаю не очень, поэтому хотел спросить существуют ли какие-то специализированные инструменты для работы с этими структурами. В PHP есть json_decode, то есть можно в PHP сразу передать массив там его "перекодировать" и потом передать в яву таким образом:
$JSproducts = json_encode($products);
print "<script> var yaParams = $JSproducts </script>";

Ииии... вопрос: нужно будет писать циклы, чтобы извлечь все данные из этой структуры и запихнуть в структуру нужного формата, или можно просто переименовать нужные... свойства(поля, переменные - не знаю как правильно называются) и удалить ненужные. Желательно на PHP, но если на JS в JQuery есть инструмент с помощью которого можно это сделать проще, то можно на JS.

Последний раз редактировалось frenzy, 09.06.2014 в 13:06.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Оптимизация WorkFlow! melky Сборка проекта, утилиты 19 28.03.2015 15:11
Управление скроллом "а-ля тач" HonesT Элементы интерфейса 2 27.08.2013 14:25
Модуль для работы с модулями JSprog Ваши сайты и скрипты 29 02.09.2009 13:31
нужна программа для этого. Чем писать? javascript или php? spam-server Серверные языки и технологии 3 27.08.2009 00:52
Что выбрать XML или JSON для передачи Ajax - ом из PHP в JS Gozar Общие вопросы Javascript 20 16.08.2009 23:36