如何从数组中提取单个值

How to extract a single value from an array

本文关键字:提取 单个值 数组      更新时间:2023-09-26

我对JavaScript很陌生,所以如果这是一个愚蠢的问题,请原谅我:

我有这个阿贾克斯电话:

$.ajax({
  type: 'GET',
  url: 'product_prices/' + value,
  success: function (data) {
    console.log('success', data)
  }
});

值"data"生成一个数组:

success [{"price":"120.00"}]

我需要的是提取价格(120)的值,并在以后的加法中使用它。

如何获取此值?

你可以做:

var price = data[0]['price'];

或:

var price = data[0].price;

其中任何一个的工作方式都是这样的:您正在访问数组中名为 data 的第一个值,然后访问该值中名为"price"的字段。没有必要将其分配给变量。

但是,您可能希望在循环中执行此操作,遍历所有数据值,以便在数据的第一个元素不是您想要的元素的情况下,您仍然可以捕获它。例如:

data.forEach(function(i) {
    console.log(data[i].price);
    //do stuff with the value here
});

>data有一个具有 price 属性的对象数组。访问数组中的第一个对象并将其价格解析为数字:

parseFloat(data[0].price);

测试一下,您必须在使用JSON字符串之前对其进行解析!

var data = JSON.parse('[{"price":"120.00"}]'); var Price = data[0].price; // 120.00 //OR IF it's Single And not Array var Price = data.price; // 120.00

由于响应是数组,因此访问第一个位置,然后访问对象属性:

data[0].price; //"120.00"
var result = {},
    sum    = 0;
$.ajax({
    type: 'GET',
    url: 'product_prices/' + value,
    success: function (data) {
        result = data[0];
    }
});
sum = parseFloat(result.price) + 2.25;