如果它是第一个数字,如何删除零?

时间:2015-11-27 21:03:33

标签: javascript html

这是我第一次尝试制作一个javascript而且我只是在两周前开始学习,所以很容易发现潜在的新闻。我基本上只是试图将国际号码转换为需要实际拨打的号码。

我需要弄清楚如何从phonenumber变量中删除前导零,而不是其他零。我已经看到了涉及parseInt和其他解决方案的答案,但我无法弄清楚如何实现它们。

<script>
var countrycode = document.getElementById("country").value;
var phonenumber = document.getElementById("phnm").value;
function updatecountrycode() // Updates country code on user change //
 {countrycode = document.getElementById("country").value;}
function updatenumber() // Updates phone number on user input //
 {phonenumber = document.getElementById("phnm").value;}
function fullnumber() // Displays country code + phone number //
document.getElementById("output").innerHTML = 9011 + countrycode + phonenumber};
</script>
<form>
Choose the country you want to call
<select id="country" onchange="updatecountrycode();">
<option>Choose Country</option>
<option value="44" id="uk">United Kingdom</option>
<option value="353" id="ire">Ireland</option>
</select>
<br>
<br>
Enter Phone Number
<input type="text" id="phnm" onchange="updatenumber()"><br>
</form>
<button type="button" onclick="fullnumber()">complete number will display</button>
<p id="output">test</p>

4 个答案:

答案 0 :(得分:4)

一个简单的解决方案:

if (phonenumber.substr(0,1) == "0")
{
    phonenumber = phonenumber.substr(1);
}

答案 1 :(得分:0)

JavaScript的:

var PhoneNumber = "0545";
var PhoneNumber = parseInt(PhoneNumber, "10"); 

问题解决了。 parseInt(10)的第二个参数是指示基于十进制的数字(默认为8)。但是,将数字解析为整数将很容易删除前导零 - 并且您不必担心子字符串或if语句。

答案 2 :(得分:0)

我为你创造了一个小提琴。 https://jsbin.com/dotoha/edit?html,js,output

parseInt解决方案工作正常,因为例如praseInt('032132323')将产生32132323,对于多个前导零,它也将起作用

e.g。 parseInt('0003434344434')将提供3434344434

var countrycode = document.getElementById("country").value;
var phonenumber = document.getElementById("phnm").value;

function updatecountrycode() {
  // Updates country code on user change //
  countrycode = document.getElementById("country").value;
}

function fullnumber() {
  // Displays country code + phone number //
  var phonenumber = document.getElementById("phnm").value;
  document.getElementById("output").innerHTML = 9011 + countrycode + parseInt(phonenumber);
}

答案 3 :(得分:0)

对不起,我知道我在这个问题上迟到了,但是我认为这个问题仍然与某些用户有关,因此我想分享一个我创建的简单功能,该功能可以为文本框删除零。

要使用此函数,只需将您的值解析为该函数中的参数,即removeZero(yourValue)

function removeZero(v) {
    if ( v.charAt(0) == 0 ) {
        return v.slice(1);
    }
}