使用For循环的JS编号

时间:2016-12-10 17:54:56

标签: javascript arrays for-loop numbers prompt

我是javascript的新手,我被困在一个javascript for循环练习,问题是我需要将填写的电话号码返回到文本,它必须看起来像这样:

(这只是一个例子)

填写编号:0332141 我该怎么回事呢:零 - 三 - 三 - 二 - 一 - 四 - 一

这是我已经拥有的代码,我必须使用它:

def check_for_number(list):
x = 0
print(isinstance(list[x], (int, float))
true_or_false = False
for x in range(len(list)-1):
    if isinstance(list[x], (int, float) == True):
        true_or_false = True
        num = list[x]
    x += 1
print(true_or_false)
return true_or_false 
return num

但是这个只显示数字,所以上面的例子我需要返回单词中的数字,有关如何执行此操作的任何想法?

4 个答案:

答案 0 :(得分:2)

此代码应该是有用的。它只是将输入字符串拆分为图形数组,将每个数字转换为相应的字符串,最后将数组连接到" - " separeted string。



var table = ['zero','one','two','three','four','five','six','seven','eight','nine'];
var phone = "012658"
var number2text = phone.split("").map(x => table[x]).join("-");
console.log(number2text);




答案 1 :(得分:1)



   var number = new Array();
   number[0] = 'zero';
   number[1] = 'one';
   number[2] = 'two';
   number[3] = 'three';
   number[4] = 'four';
   number[5] = 'five';
   number[6] = 'six';
   number[7] = 'seven';
   number[8] = 'eight';
   number[9] = 'nine';

    var phonenumber = prompt('What is youre phonenumber?');
    phonenumber = phonenumber.split("");
    
    for(var i = 0; i < phonenumber.length; i++) {
        phonenumber[i] = number[phonenumber[i]];
    }
    
    phonenumber = phonenumber.join(" - ");
   document.write('<br> your phonenumber is: ' + phonenumber);
&#13;
 <!DOCTYPE html>
 <html lang = "nl">
 <head>
 <meta http-equiv="Content-Type"
   content="text/html"
   charset=UTF-8/>
     <title>Lab11</title>
  </head>
  <body>
   </body>
   </html>
&#13;
&#13;
&#13;

这对你有用。它将来自提示的响应拆分为每个元素一个数字的数组,然后遍历它并用其名称替换每个数字。

答案 2 :(得分:0)

这是最快的方法:

&#13;
&#13;
var h1 = document.body.getElementsByTagName('h1')[0];

// Convert number to words
function numToText(num) {
  num = num.toString(); //Convert number to string
  var text = '<br>'; 
  var numbers = {'0': 'zero', '1': 'one', '2': 'two', '3': 'three', '4': 'four', '5': 'five', '6': 'six', '7': 'seven', '8': 'eight', '9': 'nine'};

  var len = num.length;
  for(var i = 0; i < len; i++) {
    text += numbers[num.charAt(i)];
    if(i < len-1)  text += ' - ';
  }
  return text;
}

// Form Handler
var form = document.forms[0];
form.onsubmit = function(){
    var input = form.elements[0].value;
    document.body.innerHTML += numToText(input);
    return false; //prevent page refresh after submit
};
&#13;
<h1>What is you're phone number?</h1>
<form id="form">
  <input type="text" name="text" value="">
  <input type="submit" name="submit" value="submit">
</form>
&#13;
&#13;
&#13;

答案 3 :(得分:0)

要获取输入数字的字词,请使用以下代码段(在您提示输入数字

之后)
var phoneString = "";
for (i=0; i<phonenumber.length; i++){
  phoneString +=(number[phonenumber[i]] + " ");
}
document.write('<br> your phonenumber is: ' + phoneString);