在过去的几天里,我一直在为我的浏览器扩展写一些代码,我一直在转换网站上的价格。
到目前为止,我意识到我可以通过文档.QuerySelectionAll('.Price__Blocks')从技术上获得价格数组,但它不允许我的代码运行,因为它给出了一个错误:vm8032:2 uncatted typeerror:nodes[I].replace不是一个函数在:2:38
vals = ["80.00$", "50.00$", "70.00$", "69.99$"];
for (var i = 0; i < 4; ++i){
var priceNum = parseFloat(vals[i].replace(/$/g, ""))
priceNum = priceNum * 0.000020 + " BTC"
console.log(priceNum)
}
null
vals = ["80.00$", "50.00$", "70.00$", "69.99$"];
for (var i = 0; i < 4; ++i){
var priceNum = parseFloat(vals[i].replace(/$/g, ""))
priceNum = priceNum * 0.000020 + " BTC"
console.log(priceNum)
}
null
var nodes = document.querySelectorAll('.price__block')
for (var i = 0; i < nodes.length; ++i){
var priceNum = parseFloat(nodes[i].replace(/€/g, ""))
priceNum = priceNum * 0.000020 + " BTC"
nodes[i].innerHTML = priceNum;
}
null
var nodes = document.querySelectorAll('.price__block')
for (var i = 0; i < nodes.length; ++i){
var priceNum = parseFloat(nodes[i].replace(/€/g, ""))
priceNum = priceNum * 0.000020 + " BTC"
nodes[i].innerHTML = priceNum;
}
null
为了更好地理解VisualStudio代码和Playground的问题图像,我将附上屏幕截图
在实际的代码中,您试图从元素调用replace函数,该replace函数只能对字符串调用。
要解决此问题,您可能需要执行以下操作:
var nodes = document.querySelectorAll('.price__block')
for (var i = 0; i < nodes.length; ++i){
var priceNum = parseFloat(nodes[i].innerHTML.replace(/€/g, ""))
priceNum = priceNum * 0.000020 + " BTC"
nodes[i].innerHTML = priceNum;
}