Rumah  >  Soal Jawab  >  teks badan

Tukar innerhtml kepada nombor dan buat pengiraan

Saya sedang membuat kalkulator bahan mudah tetapi apabila saya menjumlahkan nilai saya mendapat 27002700 dan bukannya 5400 Jadi saya cuba menolaknya ke tatasusunan dan menggunakan .map dan Number, Saya menulis semula kira-kira 10 kali. Saya kehabisan idea.

const heightValue = document.querySelector(".height-value")
const tottalDiv = document.querySelector(".tottal-div")

let heightArr = []
function rangeSlide2(value){
  heightValue.innerHTML = value;
}
heightArr.push(heightValue.innerHTML)
function tottal() {
 let tonum = heightArr.map(Number)
  tottalDiv.innerHTML = tonum + tonum;
}
<input type="range" name="range" id="height-range" min="2000" max="3500" step="100" value="2700" onchange="rangeSlide2(this.value)" onmousemove="rangeSlide2(this.value)">
        <span class="height-value">2700</span>
        
        <div class="button-div">
      <button type="button" class="submit" onclick="tottal()">tottal</button>
    </div>

    <div class="tottal-div">0</div>

P粉425119739P粉425119739276 hari yang lalu345

membalas semua(1)saya akan balas

  • P粉637866931

    P粉6378669312024-01-17 10:39:08

    map 的结果将是一个数组,当您尝试将两个数组与一个值相加时,它将转换为 string,因此 [2700 ] + [2700]'2700' + '2700' = '27002700' Sama.

    Jadi, saya rasa apa yang anda perlukan ialah kaedah reduce untuk menjumlahkan semua nilai.

    const heightValue = document.querySelector(".height-value")
    const tottalDiv = document.querySelector(".tottal-div")
    
    let heightArr = []
    function rangeSlide2(value){
      heightValue.innerHTML = value;
    }
    heightArr.push(+heightValue.innerHTML)
    function tottal() {
      let tonum = heightArr.reduce((acc, item) => acc + item)
      tottalDiv.innerHTML = tonum + tonum;
    }
    <input type="range" name="range" id="height-range" min="2000" max="3500" step="100" value="2700" onchange="rangeSlide2(this.value)" onmousemove="rangeSlide2(this.value)">
            <span class="height-value">2700</span>
            
            <div class="button-div">
          <button type="button" class="submit" onclick="tottal()">tottal</button>
        </div>
    
        <div class="tottal-div">0</div>

    balas
    0
  • Batalbalas