简体   繁体   English

如何使用JavaScript从JSON数组获取JSON值

[英]How to get json value from json array using javascript

I am using javascript to get value from json array.I am a beginner with the json array and I am not able to get idea how to do this.My json array is comes like this: 我正在使用javascript从json数组获取值。我是json数组的初学者,但我不知道如何执行此操作。我的json数组如下所示:

{
  "disclaimer": "Exchange rates are provided for informational purposes only, and do not constitute financial advice of any kind. Although every attempt is made to ensure quality, NO guarantees are given whatsoever of accuracy, validity, availability, or fitness for any purpose - please use at your own risk. All usage is subject to your acceptance of the Terms and Conditions of Service, available at: https://openexchangerates.org/terms/",
  "license": "Data sourced from various providers with public-facing APIs; copyright may apply; resale is prohibited; no warranties given of any kind. Bitcoin data provided by http://coindesk.com. All usage is subject to your acceptance of the License Agreement available at: https://openexchangerates.org/license/",
  "timestamp": 1416297649,
  "base": "USD",
  "rates": {
    "AED": 3.673191,
    "AFN": 58.008151,
    "ALL": 112.1323,
    "AMD": 415.972002,
    "ANG": 1.78696,
    "AOA": 100.644875,
    "ARS": 8.508199,
    "AUD": 1.145932,
    "AWG": 1.79,
    "AZN": 0.7843,
    "BAM": 1.567493,
    "BBD": 2,
    "BDT": 77.32636,
    "BGN": 1.567435,
    "BHD": 0.376895,
    "BIF": 1556.029233,
    "BMD": 1,
    "BND": 1.298167,
    "BOB": 6.908841,
    "BRL": 2.607403,
    "BSD": 1,
    "BTC": 0.0025684709,
    "BTN": 61.7715,
    "BWP": 9.257686,
    "BYR": 10814.633333,
    "BZD": 1.997764,
    "CAD": 1.127204,
    "CDF": 925.406333,
    "CHF": 0.962128,
    "CLF": 0.02436,
    "CLP": 595.853895,
    "CNY": 6.12456,
    "COP": 2154.505,
    "CRC": 538.195095,
    "CUP": 1.000738,
    "CVE": 87.892625,
    "CZK": 22.17167,
    "DJF": 178.03412,
    "DKK": 5.961459,
    "DOP": 43.68968,
    "DZD": 84.73913,
    "EEK": 12.5279,
    "EGP": 7.147473,
    "ERN": 15.062575,
    "ETB": 20.09255,
    "EUR": 0.801147,
    "FJD": 1.934408,
    "FKP": 0.638658,
    "GBP": 0.638658,
    "GEL": 1.76438,
    "GGP": 0.638658,
    "GHS": 3.21655,
    "GIP": 0.638658,
    "GMD": 43.08885,
    "GNF": 7084.038333,
    "GTQ": 7.612101,
    "GYD": 206.740124,
    "HKD": 7.754716,
    "HNL": 21.22432,
    "HRK": 6.145546,
    "HTG": 46.35835,
    "HUF": 245.287701,
    "IDR": 12156.366667,
    "ILS": 3.836499,
    "IMP": 0.638658,
    "INR": 61.74318,
    "IQD": 1176.692567,
    "IRR": 26711.333333,
    "ISK": 123.965999,
    "JEP": 0.638658,
    "JMD": 112.8815,
    "JOD": 0.706622,
    "JPY": 116.5573,
    "KES": 90.07741,
    "KGS": 57.6,
    "KHR": 4059.736567,
    "KMF": 394.713449,
    "KPW": 900,
    "KRW": 1098.851659,
    "KWD": 0.291222,
    "KYD": 0.82625,
    "KZT": 180.936999,
    "LAK": 8049.581667,
    "LBP": 1511.646667,
    "LKR": 130.990299,
    "LRD": 91.50915,
    "LSL": 11.11745,
    "LTL": 2.765696,
    "LVL": 0.562739,
    "LYD": 1.206794,
    "MAD": 8.838571,
    "MDL": 15.071,
    "MGA": 2720.776667,
    "MKD": 49.38793,
    "MMK": 1030.461733,
    "MNT": 1874.666667,
    "MOP": 7.986375,
    "MRO": 290.8235,
    "MTL": 0.683738,
    "MUR": 31.6021,
    "MVR": 15.28127,
    "MWK": 457.6505,
    "MXN": 13.57063,
    "MYR": 3.352459,
    "MZN": 31.100225,
    "NAD": 11.11885,
    "NGN": 172.279401,
    "NIO": 26.61524,
    "NOK": 6.766937,
    "NPR": 99.04372,
    "NZD": 1.258938,
    "OMR": 0.38502,
    "PAB": 1,
    "PEN": 2.931746,
    "PGK": 2.560203,
    "PHP": 44.94794,
    "PKR": 101.784399,
    "PLN": 3.380801,
    "PYG": 4666.459993,
    "QAR": 3.640328,
    "RON": 3.551761,
    "RSD": 96.324459,
    "RUB": 47.07185,
    "RWF": 691.6032,
    "SAR": 3.752252,
    "SBD": 7.443016,
    "SCR": 14.17481,
    "SDG": 5.686665,
    "SEK": 7.409777,
    "SGD": 1.297628,
    "SHP": 0.638658,
    "SLL": 4361.666667,
    "SOS": 786.04194,
    "SRD": 3.275,
    "STD": 19621.866667,
    "SVC": 8.750655,
    "SYP": 168.829401,
    "SZL": 11.11241,
    "THB": 32.79493,
    "TJS": 5.080025,
    "TMT": 2.85,
    "TND": 1.833351,
    "TOP": 1.984081,
    "TRY": 2.228282,
    "TTD": 6.34007,
    "TWD": 30.72224,
    "TZS": 1723.825,
    "UAH": 15.49353,
    "UGX": 2731.136667,
    "USD": 1,
    "UYU": 24.17477,
    "UZS": 2405.860013,
    "VEF": 6.30235,
    "VND": 21329.55,
    "VUV": 98.452501,
    "WST": 2.385222,
    "XAF": 526.037765,
    "XAG": 0.06207936,
    "XAU": 0.00083957,
    "XCD": 2.70156,
    "XDR": 0.682345,
    "XOF": 526.128025,
    "XPF": 95.673269,
    "YER": 214.9703,
    "ZAR": 11.09921,
    "ZMK": 5253.075255,
    "ZMW": 6.373054,
    "ZWL": 322.355006
  }
}

My javascript function is like this: 我的JavaScript函数是这样的:

  function GetBalanceQty(val) {
            //in val u get dropdown list selected value
            var id = val;
            alert("value=" + id);


            var xmlhttp = new XMLHttpRequest();
            var url = "https://openexchangerates.org/api/latest.json?app_id=324d066072324a7fba34618f5c5dfd83";

            xmlhttp.onreadystatechange = function () {
                if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
                    myFunction(xmlhttp.responseText);
                }
            }
            xmlhttp.open("GET", url, true);
            xmlhttp.send();

            function myFunction(response) {
                var arr = JSON.parse(response);


 // Logic to display value of currency (contained in val argument) in jason array.


            }

My javascript function GetBalanceQty(val) recieves 3 letter currency name in val argument now I want to display its corresponding value. 我的javascript函数GetBalanceQty(val)现在在val参数中接收3个字母的货币名称,我想显示其对应的值。

function myFunction(response) {
    var currencyData = JSON.parse(response);

    if (!currencyData.rates) {
        // possibly handle error condition with unrecognized JSON response
        alert("currency data not found!");
    }

    // id variable is available from outer function
    if (id in currencyData.rates) {
        alert(currencyData.rates[id]);
    } else {
        alert("unknown currency code!");
    }
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM