Как получить только 1-й элемент данных JSON?

Я хочу получить только 1-й элемент массива json

мои данные json:

{  
 id:"1",
 price:"130000.0",
 user:55,
}
{  
  id:"2",
  price:"140000.0",
 user:55,
}

я хочу получить доступ к цене 1-го элемента json цена: "13000.0"

мой код

$.each(data_obj, function(index, element) {
    $('#price').append(element.price[0]);
});

но мой результат это '1'

Попробуйте 'element.price' вместо 'element.price [0]', который разбивает цену в массиве, что и делает ваш код, вы получаете первый символ цены, который равен '1'.

NLxDoDge 28.09.2018 14:46
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
2
2
15 874
8
Перейти к ответу Данный вопрос помечен как решенный

Ответы 8

Ответ принят как подходящий

Предполагая, что у вас есть массив объектов

var arr = [{  
      id:"1",
      price:"130000.0",
      user:55,
     },
     {  
       id:"2",
       price:"140000.0",
      user:55,
     }]

     console.info(arr[0].price)
<script src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

@ c.grey Я думаю, у вас есть строка JSON, вам нужно сначала проанализировать свою строку JSON на JSON, тогда вы сможете получать данные в соответствии с моим данным примером. Для этого разобрать с JSON.parse(data)

Ali Shahbaz 28.09.2018 15:01

Я проанализировал данные JSON

rahul.m 28.09.2018 19:28

Элемент, содержащий ваши данные JSON, означает, что мы можем использовать приведенный ниже код для получения первых данных JSON.

element[0].price

Спасибо,

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

$.each(data_obj, function(index, element) {
      $('#price').append(element.price);
});

Если вы просто хотите получить первый элемент

$('#price').append(data_obj[0].price);

я хочу только 1-й объект

rahul.m 28.09.2018 14:47

Так почему вы используете loop tho? $ ('# цена'). append (data_obj [0] .price);

Void Spirit 28.09.2018 14:48
var my_first_json_obj = data_obj[0]; // Your first JSON obj (if it's an array of json object)
var my_price = my_first_json_obj.price; // Your price 
$('#price').append(my_price);

Ваши данные недействительны JSON, ключ данных JSON должен быть заключен в двойные кавычки, но ваши данные не заключены в двойные кавычки

var data = [{  
    "id":"1",
    "price":"130000.0",
    "user":55
},{  
    "id":"2",
    "price":"140000.0",
    "user":55
}]

console.info(data[0]["price"]);

Если вам нужна только цена первого предмета, вам не нужен цикл.

$('#price').append(data_obj[0].price);

будет работать здесь.

Для дальнейшего чтения вы можете обратиться к здесь

Здравствуйте, вам просто нужно добавить [] от начальной и конечной точки вашей строки json. см. здесь var data = JSON.parse( '[{ "id":"1","price":"130000.0","user":55},{"id":"2","price":"140000.0","user":55}]');

var priceValue = 0;
$.each(data, function(index, element) {if (index == 0){  priceValue =    element.price;}});console.info(priceValue);

Ваш ответ будет 13000.0

Ниже приведено решение, которое помогло моей проблеме. Я использую вернуть ложь;

$.each(data_obj, function(index, element) {
     $('#price').append(element.price[0]);
     return false;
  });

Что дает только 1-е значение элементов массива.

Другие вопросы по теме