Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/419.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何比较javascript布尔函数中的字符串?_Javascript_Function_Boolean_String Comparison_Stringcomparer - Fatal编程技术网

如何比较javascript布尔函数中的字符串?

如何比较javascript布尔函数中的字符串?,javascript,function,boolean,string-comparison,stringcomparer,Javascript,Function,Boolean,String Comparison,Stringcomparer,我必须为JavaScript函数编写一个单元测试来比较两个电话号码。这是一个输入参数为两个字符串的函数,返回类型为true/falseTrue如果电话号码相同,如果不相同,则为false。测试中应包括尽可能多的情况 函数的定义是phoneNrsAreEqual(nr1:String,nr2:String):Bool 谢谢你帮助我 我相信这就是你需要的 可以使用replace函数删除空格 功能电话号码号码(第一个号码,第二个号码){ return removespace(firstNumber)

我必须为JavaScript函数编写一个单元测试来比较两个电话号码。这是一个输入参数为两个字符串的函数,返回类型为
true/false
True
如果电话号码相同,如果不相同,则为
false
。测试中应包括尽可能多的情况

函数的定义是
phoneNrsAreEqual(nr1:String,nr2:String):Bool


谢谢你帮助我

我相信这就是你需要的

可以使用replace函数删除空格

功能电话号码号码(第一个号码,第二个号码){
return removespace(firstNumber)=removespace(secondNumber);
}
函数RemoveSpace(str){
return str=str.replace(/\s+/g',);

}
首先,通过创建没有标点符号的字符串版本来清除电话号码

function cleanPhoneNumber(n) {
  return n.replace(/[() +-]/g,"");
}

function phoneNrsAreEqual(nr1, nr2) {
  return cleanPhoneNumber(nr1) === cleanPhoneNumber(nr2);
}
如果数字包括国际数字,情况会复杂得多,因为有太多不同的方式来表示它们

(01234) 567890
+44 (1234) 567890
01144 (1234) 567890   (when dialed from US)

所有的数字都是相同的。

是的,我正在寻找一些类似的东西,但是我必须考虑,数字可以是空间的,例如0947854789和0947,854,789个数是相同的,但是它会因为空间而返回错误,或者如果使用前拨号。<代码>返回第一个数=第二个数< /代码>返回真或假,使用<代码>?true:false是没有意义的。
返回str=str.replace(/\s+/g')
实际上应该是
返回str.replace(/\s+/g',)返回中的作业没有意义。感谢您的帮助austin。所以如果我理解正确的话,在functin中调用函数cleanPhoneNumber来比较数字是有效的吗?是的
cleanPhoneNumber
是一个助手函数,给定一个电话号码,返回该号码的一个版本,并删除标点。return语句正在比较清除版本的
nr1
和清除版本的
nr2
==
运算符执行严格的相等比较,以检查干净字符串是否相等,从而生成true或false。