JavaScript字串數值比較問題

來源:互聯網
上載者:User

JavaScript字串數值比較問題

1、問題背景

今天,在項目中遇到一個問題:兩個輸入框,一個輸入框的值是8.4,另一個是21.3,比較兩個輸入框裡值時,出現了8.4大於21.3

 

2、問題分析

首先,擷取輸入框中的值是字串,而字串比較是根據ASCII碼,由於8的ASCII碼比2的ASCII碼大,導致出現了8.4大於21.3

 

3、問題驗證

(1)設計源碼

 

<script type=text/javascript>function compareData(){ var data1 = document.getElementById(inval).value;var data2 = document.getElementById(typev).value;if(data1 > data2){ alert(data1+大於+data2);}else{alert(data1+小於等於+data2);}}</script>  

(2)運行結果

 

 

4、解決辦法

(1)將字串轉換成數值

 

function compareData(){    var data1 = document.getElementById(inval).value;var data2 = document.getElementById(typev).value;if(Number(data1) > Number(data2)){    alert(data1+大於+data2);}else{alert(data1+小於等於+data2);}}

(2)運行結果

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.