Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 03.08.2015, 17:07
Кандидат Javascript-наук
Отправить личное сообщение для ligisayan Посмотреть профиль Найти все сообщения от ligisayan
 
Регистрация: 19.06.2015
Сообщений: 114

Как получить значение из ассоциативного массива?
Всем привет. Мне нужно получить из массива значение price_html , т.е. <span class=\ "price\"><span class=\ "amount\">260.000 руб.<\/span><\/span>:
var variations_form = [{"variation_id":3354,"variation_is_visible":true,"variation_is_active":true,"is_purchasable":true,"display_price":260000,"display_regular_price":260000,"attributes":{"attribute_pa_size":"large"},"image_src":"","image_link":"","image_title":"","image_alt":"","price_html":"
<span class=\ "price\"><span class=\ "amount\">260.000 руб.<\/span><\/span>"

Навскидку вот так не прокатывает..
variations_form['price_html']
Ответить с цитированием
  #2 (permalink)  
Старый 03.08.2015, 19:47
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

ligisayan,
если массив то наверно есть и индекс
Ответить с цитированием
  #3 (permalink)  
Старый 03.08.2015, 20:43
Кандидат Javascript-наук
Отправить личное сообщение для ligisayan Посмотреть профиль Найти все сообщения от ligisayan
 
Регистрация: 19.06.2015
Сообщений: 114

Сообщение от рони Посмотреть сообщение
ligisayan,
если массив то наверно есть и индекс
но ведь это ассоциативный массив где есть ключ-значение - не?
Ответить с цитированием
  #4 (permalink)  
Старый 03.08.2015, 20:47
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Сообщение от ligisayan
не?
сначала выбрать элемент массива - потом ключ этого элемента раз он обьект
Ответить с цитированием
  #5 (permalink)  
Старый 03.08.2015, 20:54
Аватар для EmperioAf
Профессор
Отправить личное сообщение для EmperioAf Посмотреть профиль Найти все сообщения от EmperioAf
 
Регистрация: 15.01.2015
Сообщений: 622

Сообщение от ligisayan
но ведь это ассоциативный массив где есть ключ-значение - не?
нет. То, что вы привели это массив у которого ключи цифры 0,1,2...
А по ключам получаете объекты
Ответить с цитированием
  #6 (permalink)  
Старый 03.08.2015, 21:05
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Сообщение от EmperioAf
А по ключам получаете объекты

ligisayan, попробуйте решить сами, прежде чем нажать Показать исходный код
var variations_form = [{
    "variation_id": 3354,
    "variation_is_visible": true,
    "variation_is_active": true,
    "is_purchasable": true,
    "display_price": 260000,
    "display_regular_price": 260000,
    "attributes": {
        "attribute_pa_size": "large"
    },
    "image_src": "",
    "image_link": "",
    "image_title": "",
    "image_alt": "",
    "price_html": '<span class="price"><span class="amount">260.000 руб.</span></span>'
}];
alert(variations_form[0]["price_html"]);
Ответить с цитированием
  #7 (permalink)  
Старый 03.08.2015, 21:16
Аватар для EmperioAf
Профессор
Отправить личное сообщение для EmperioAf Посмотреть профиль Найти все сообщения от EmperioAf
 
Регистрация: 15.01.2015
Сообщений: 622

Сообщение от рони
я плохо выразился.
<!DOCTYPE html>
<html>
<head>
 <meta http-equiv="content-type" content="text/html; charset=utf-8" />
 <title>ГГ</title>
 <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
<link rel="stylesheet" href="test.css">
</head>
<body>
<script>
var variations_form = [{"variation_id":3354,"variation_is_visible":true,"variation_is_active":true,"is_purchasable":true,"display_price":260000,"display_regular_price":260000,"attributes":{"attribute_pa_size":"large"},"image_src":"","image_link":"","image_title":"","image_alt":"","price_html":"<span class=\"price\"><span class=\"amount\">260.000 руб.<\/span><\/span>"}];
alert(variations_form[0]['price_html']);

</script>
</body>
</html>
Ответить с цитированием
  #8 (permalink)  
Старый 04.08.2015, 10:17
Кандидат Javascript-наук
Отправить личное сообщение для ligisayan Посмотреть профиль Найти все сообщения от ligisayan
 
Регистрация: 19.06.2015
Сообщений: 114

рони, EmperioAf Делаю 3 вывода через консоль
console.log(variations_form);

console.log(variations_form[0]);

console.log(variations_form[0]['price_html']);


получаю:
[{"variation_id":3354,"variation_is_visible":true,"variation_is_active":true,"is_purchasable":true,"display_price":260000,"display_regular_price":260000,"attributes":{"attribute_pa_size":"large"},"image_src":"","image_link":"","image_title":"","image_alt":"","price_html":"<span class=\"price\"><span class=\"amount\">260.000 руб.<\/span><\/span>","availability_html":"","sku":"","weight":" kg","dimensions":"","min_qty":1,"max_qty":"","backorders_allowed":false,"is_in_stock":true,"is_downloadable":false,"is_virtual":false,"is_sold_individually":"no"},{"variation_id":3355,"variation_is_visible":true,"variation_is_active":true,"is_purchasable":true,"display_price":160000,"display_regular_price":160000,"attributes":{"attribute_pa_size":"medium"},"image_src":"","image_link":"","image_title":"","image_alt":"","price_html":"<span class=\"price\"><span class=\"amount\">160.000 руб.<\/span><\/span>","availability_html":"","sku":"","weight":" kg","dimensions":"","min_qty":1,"max_qty":"","backorders_allowed":false,"is_in_stock":true,"is_downloadable":false,"is_virtual":false,"is_sold_individually":"no"},{"variation_id":3356,"variation_is_visible":true,"variation_is_active":true,"is_purchasable":true,"display_price":80000,"display_regular_price":80000,"attributes":{"attribute_pa_size":"small"},"image_src":"","image_link":"","image_title":"","image_alt":"","price_html":"<span class=\"price\"><span class=\"amount\">80.000 руб.<\/span><\/span>","availability_html":"","sku":"","weight":" kg","dimensions":"","min_qty":1,"max_qty":"","backorders_allowed":false,"is_in_stock":true,"is_downloadable":false,"is_virtual":false,"is_sold_individually":"no"}]

[

undefined

но undefined - это не то, что мне нужно
Ответить с цитированием
  #9 (permalink)  
Старый 04.08.2015, 10:44
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

ligisayan,
значит нет у вас ничего в variations_form на момент проверки
иначе всё нормально выводится
вывод третьего элемента массива
var variations_form =   [{
    "variation_id": 3354,
    "variation_is_visible": true,
    "variation_is_active": true,
    "is_purchasable": true,
    "display_price": 260000,
    "display_regular_price": 260000,
    "attributes": {
        "attribute_pa_size": "large"
    },
    "image_src": "",
    "image_link": "",
    "image_title": "",
    "image_alt": "",
    "price_html": "<span class=\"price\"><span class=\"amount\">260.000 руб.<\/span><\/span>",
    "availability_html": "",
    "sku": "",
    "weight": " kg",
    "dimensions": "",
    "min_qty": 1,
    "max_qty": "",
    "backorders_allowed": false,
    "is_in_stock": true,
    "is_downloadable": false,
    "is_virtual": false,
    "is_sold_individually": "no"
}, {
    "variation_id": 3355,
    "variation_is_visible": true,
    "variation_is_active": true,
    "is_purchasable": true,
    "display_price": 160000,
    "display_regular_price": 160000,
    "attributes": {
        "attribute_pa_size": "medium"
    },
    "image_src": "",
    "image_link": "",
    "image_title": "",
    "image_alt": "",
    "price_html": "<span class=\"price\"><span class=\"amount\">160.000 руб.<\/span><\/span>",
    "availability_html": "",
    "sku": "",
    "weight": " kg",
    "dimensions": "",
    "min_qty": 1,
    "max_qty": "",
    "backorders_allowed": false,
    "is_in_stock": true,
    "is_downloadable": false,
    "is_virtual": false,
    "is_sold_individually": "no"
}, {
    "variation_id": 3356,
    "variation_is_visible": true,
    "variation_is_active": true,
    "is_purchasable": true,
    "display_price": 80000,
    "display_regular_price": 80000,
    "attributes": {
        "attribute_pa_size": "small"
    },
    "image_src": "",
    "image_link": "",
    "image_title": "",
    "image_alt": "",
    "price_html": "<span class=\"price\"><span class=\"amount\">80.000 руб.<\/span><\/span>",
    "availability_html": "",
    "sku": "",
    "weight": " kg",
    "dimensions": "",
    "min_qty": 1,
    "max_qty": "",
    "backorders_allowed": false,
    "is_in_stock": true,
    "is_downloadable": false,
    "is_virtual": false,
    "is_sold_individually": "no"
}]
alert(variations_form[2]['price_html']);
Ответить с цитированием
  #10 (permalink)  
Старый 04.08.2015, 11:40
Кандидат Javascript-наук
Отправить личное сообщение для ligisayan Посмотреть профиль Найти все сообщения от ligisayan
 
Регистрация: 19.06.2015
Сообщений: 114

Сообщение от рони Посмотреть сообщение
ligisayan,
значит нет у вас ничего в variations_form на момент проверки
иначе всё нормально выводится
вывод третьего элемента массива
рони есть, т.к. console.log(variations_form[0]);
выводит первый символ массива '[', если 1 - то второй '{', 2 - 3ий '"' и т.д.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как получить результат работы цикла в виде массива. Tungus Общие вопросы Javascript 29 08.12.2014 19:33
Как получить значение GET параметра user_name Events/DOM/Window 24 03.12.2014 18:12
Как получить свойсвто объекта? Armen Общие вопросы Javascript 4 19.10.2014 06:45
Видимость переменной при асинхронном запросе. Как передать и получить значение? Stroganov Ilya Общие вопросы Javascript 10 17.10.2014 17:33
Как получить значение title с помощью js? faforty Общие вопросы Javascript 4 25.08.2011 18:47