首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >尝试获取CoinGecko API和用户输入来计算,然后输出。

尝试获取CoinGecko API和用户输入来计算,然后输出。
EN

Stack Overflow用户
提问于 2022-03-08 22:07:22
回答 1查看 253关注 0票数 -1

我试着把这件事做了一段时间,但似乎无法说服我的新手。我可以console.log的硬币,但似乎不能让它乘以“btcnumber”输入,然后更新.innerText。

代码语言:javascript
复制
const api_url = "https://api.coingecko.com/api/v3/simple/price?ids=bitcoin%2Cethereum%2Cbinancecoin%2Ccardano%2Csolana%2Cterra-luna&vs_currencies=usd";
async function getData() {
    const response = await fetch(api_url);
    const data = await response.json();
    console.log(data.bitcoin.usd);
}
getData();


function coinValue() {
    let bitcoin = parseInt(document.getElementById("btcnumber") * (data.bitcoin.usd));
    document.getElementById("c-v").innerText = bitcoin.toFixed(8);
}

document.addEventListener("DOMContentLoaded", function() {
    let submit = document.getElementById("calculateButton");
    calculateButton.addEventListener("click", function() {
        coinValue()
    })

})
代码语言:javascript
复制
<input id="btcnumber" type="number" class="form-control" placeholder="Number Purchased">
                                    
<button id="calculateButton" onclick=coinValue()>Calculate</button>

<h4>CURRENT VALUE <span id="c-v"></span></h4>

EN

回答 1

Stack Overflow用户

发布于 2022-03-08 22:19:51

之所以发生这种情况,是因为在coinValue()函数中,data变量不存在。通过将它排除在函数之外,使其成为一个全局变量。

此外,在coinValue()函数中,您必须在乘法的末尾添加.value,以获得输入的实际值。

代码语言:javascript
复制
let data;

const api_url = "https://api.coingecko.com/api/v3/simple/price?ids=bitcoin%2Cethereum%2Cbinancecoin%2Ccardano%2Csolana%2Cterra-luna&vs_currencies=usd";
async function getData() {
    const response = await fetch(api_url);
    data = await response.json();
    console.log(data.bitcoin.usd);
}
getData();


function coinValue() {
    let bitcoin = parseInt(document.getElementById("btcnumber").value * (data.bitcoin.usd));
    document.getElementById("c-v").innerText = bitcoin.toFixed(8);
}

document.addEventListener("DOMContentLoaded", function() {
    let submit = document.getElementById("calculateButton");
    calculateButton.addEventListener("click", function() {
        coinValue()
    })

})
代码语言:javascript
复制
<input id="btcnumber" type="number" class="form-control" placeholder="Number Purchased">
                                    
<button id="calculateButton" onclick=coinValue()>Calculate</button>

<h4>CURRENT VALUE <span id="c-v"></span></h4>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71402044

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档