codewars--js--create phone number

Write a function that accepts an array of 10 integers (between 0 and 9), that returns a string of those numbers in the form of a phone number.

Example:

createPhoneNumber([1, 2, 3, 4, 5, 6, 7, 8, 9, 0]) // => returns "(123) 456-7890"

The returned format must be correct in order to complete this challenge. 
Don't forget the space after the closing parentheses!

我的答案:

 1 function createPhoneNumber(numbers){
 2   
 3   //var a="(".concat(numbers);
 4   //a=a.replace(/,/g,"");
 5   var a=numbers.slice(0,3);
 6   a="(".concat(a).concat(") ");
 7   var b=numbers.slice(3,6);
 8   b=b.concat("-");
 9   var c=numbers.slice(6);
10   var d=a.concat(b).concat(c);
11   d=d.replace(/,/g,"");
12   return d; 
13   
14 }

优秀答案:

 1 function createPhoneNumber(numbers){
 2   var format = "(xxx) xxx-xxxx";
 3   
 4   for(var i = 0; i < numbers.length; i++)
 5   {
 6     format = format.replace('x', numbers[i]);
 7   }
 8   
 9   return format;
10 }
1 function createPhoneNumber(numbers){
2   return numbers.join('').replace(/(...)(...)(.*)/, '($1) $2-$3');
3 }
原文地址:https://www.cnblogs.com/hiluna/p/8627519.html