【问题标题】:How do I read json file with a loop and insert variables into locator?如何使用循环读取 json 文件并将变量插入定位器?
【发布时间】:2019-08-17 12:28:56
【问题描述】:

如何将变量插入地址以读取 JSON 文件。它应该是这样的。但这不起作用。第一部分有效,但这是它应该如何工作的示例。工作部分称为workingMarketCap

<!DOCTYPE html>
<html>
    <body>
    </body>

    <!--============================ SCRIPT ============================ -->
    <script>
        //Variables
        var myRequest = new XMLHttpRequest(); 
        var watchList = ["AAPL", "FB", "GOOGL", "MSFT"];
        var urlList = watchList.join(',');

        //IEX API requests open and send
        myRequest.open ('GET', `https://api.iextrading.com/1.0/stock/market/batch?symbols=${urlList}&types=quote`) //use API function "GET" to recieve data
        myRequest.send()

        //On the load of the data
        myRequest.onload = function(){
            var IEXData = JSON.parse(myRequest.responseText); //var IEXData converts JSON response to readable data for this code
            readData(IEXData, watchList); //output it into this HTML file         
        }

        /*
        =======================
            FUNCTIONS
        =======================
        */
        function readData(data, list) {
            for(var i = 0; i < 3; i++) {
                var workingMarketCap = data.AAPL.quote.marketCap;

                console.log(workingMarketCap);

                /* Does not work VVV */
                var marketCap = data.`${list[i]}`.quote.marketCap;

                console.log(marketCap);
            }
        }
    </script>
</html>

【问题讨论】:

  • 你的意思是它不工作?你能说出你想要实现什么,什么是行不通的吗?
  • 这行得通 ++ var workingMarketCap = data.AAPL.quote.marketCap; console.log(workingMarketCap); ++ 这不是 ++ var marketCap = data.${list[i]}.quote.marketCap; console.log(marketCap); ++

标签: javascript json api elixir-iex


【解决方案1】:

您可以将您的功能更改为:

function readData(data, list) {
  for (var i = 0; i < list.length; i++) {
    var workingMarketCap = data.AAPL.quote.marketCap;
    console.log(workingMarketCap);

    var marketCap = data[list[i]].quote.marketCap;
    console.log(marketCap);
  }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-14
    相关资源
    最近更新 更多