javascript - 如何将字符串javascript类型的两位小数相乘

我想将这两个字符串类型的值相乘

值 1 = "$10.99"

值 2 = "$20.8"

var x = document.getElementById("Text1");
var y = document.getElementById("Text2");
var tointx = x.Value
var tointy = y.Value
var z = tointx * tointy
var result = z.reduc((r, e) => r + +e.replace(',', '.'), 0)
alert(result);
<input id="Text1" value="$10.99" />

<input id="Text2" value="$20.8" />

最佳答案

几件事

  1. .value JS区分大小写
  2. $ 符号需要去掉
  3. reduce 也拼错了,但不需要
  4. 你确定要整数吗?

const x = document.getElementById("Text1").value;
const y = document.getElementById("Text2").value;
let tofloatx = +x.slice(1); // unary plus will convert to number but so will multiplication
let tofloaty = +y.slice(1)
let z = tofloatx * tofloaty
console.log("float",z,"int",Math.round(z))
<input id="Text1" value="$10.99" />

<input id="Text2" value="$20.8" />

https://stackoverflow.com/questions/69692015/

相关文章:

javascript - 如何在 Electron 15 中导入菜单

r - 在 download.file 中关闭 SSL 验证

lua - 波浪号本身在 Lua 中是什么意思?

java - org.gradle.api.internal.tasks.testing.TestS

typescript - 类型错误 : EventEmitter is not a construc

spring-boot - 应用程序通过 Spring Boot Run 而不是通过 Intelli

r - 使用 dplyr 获取术语列表、分组依据和汇总值

r - 如何调整饼图上的 ggrepel 标签?

html - 是否可以使用纯 CSS 为仅包含一个元素的列表设置样式,而不是为包含多个元素的列表设置

haskell - 不同类型的重载/多态函数