Javascript 检查给定5位数字中的所有5位数字是否相同
如果给定的5位数字中的所有5位数字都相同,例如11111、22222等,我想显示一个警报。这是我的小提琴,下面是我的代码,它不工作。任何帮助都将不胜感激Javascript 检查给定5位数字中的所有5位数字是否相同,javascript,angularjs,Javascript,Angularjs,如果给定的5位数字中的所有5位数字都相同,例如11111、22222等,我想显示一个警报。这是我的小提琴,下面是我的代码,它不工作。任何帮助都将不胜感激 <div ng-app="app" ng-controller="test"> <input type="text" ng-model="value"/> <button ng-click=check()>Check</button> </div> angul
<div ng-app="app" ng-controller="test">
<input type="text" ng-model="value"/>
<button ng-click=check()>Check</button>
</div>
angular.module('app', [])
.controller('test', function($scope) {
$scope.check = function() {
if(/(\d)\1{2}-\1{3}-\1{4}/.test($scope.value)) {
alert("Invalid number");
}
}
});
检查
角度.module('app',[])
.controller('test',函数($scope){
$scope.check=函数(){
if(/(\d)\1{2}-\1{3}-\1{4}/.test($scope.value)){
警报(“无效号码”);
}
}
});
这里有一个简单的版本(我对Angular不太熟悉):
var num=44444;
var num2=44445;
函数名称(num){
var arr=字符串(num).split(“”);
return arr.every(函数(el){return el==arr[0];});
}
log(arame(num));
console.log(arame(num2))代码>这里有一个简单的版本(我对Angular不太熟悉):
var num=44444;
var num2=44445;
函数名称(num){
var arr=字符串(num).split(“”);
return arr.every(函数(el){return el==arr[0];});
}
log(arame(num));
console.log(arame(num2))代码>功能检查(输入){
//将输入转换为字符串
输入+=”;
//仅验证5个字符
如果(input.length!==5){
抛出新错误(“输入不是5位数长”);
}
//验证它是否为数字。
如果(!$.isNumeric(输入)){
抛出新错误(“输入不是数值”);
}
var allSame=true;
var firstChar=输入[0];
//循环寻找不同的东西
对于(变量i=0;i<5;i++){
if(输入[i]!==firstChar){
全部相同=错误;
打破
}
}
一视同仁;
}
功能检查(输入){
//将输入转换为字符串
输入+=”;
//仅验证5个字符
如果(input.length!==5){
抛出新错误(“输入不是5位数长”);
}
//验证它是否为数字。
如果(!$.isNumeric(输入)){
抛出新错误(“输入不是数值”);
}
var allSame=true;
var firstChar=输入[0];
//循环寻找不同的东西
对于(变量i=0;i<5;i++){
if(输入[i]!==firstChar){
全部相同=错误;
打破
}
}
一视同仁;
}
纯JavaScript。假设number
是一个字符串:
function isAllSameDigit(number){
for(var i = 0; i < number.length; i++){
if(number[0] != number[i])
return false;
}
return true;
}
函数isAllSameDigit(数字){
对于(变量i=0;i
一旦发现差异,就会短路。。假设number
是一个字符串:
function isAllSameDigit(number){
for(var i = 0; i < number.length; i++){
if(number[0] != number[i])
return false;
}
return true;
}
函数isAllSameDigit(数字){
对于(变量i=0;i
一旦发现差异,这将导致短路。您可以使用以下正则表达式^([0-9])\1*$
angular.module('app', [])
.controller('test', function($scope) {
$scope.check = function() {
if(/^([0-9])\1*$/.test($scope.value)) {
alert("Invalid number");
}
}
});
请参阅您可以使用以下正则表达式([0-9])\1*$
angular.module('app', [])
.controller('test', function($scope) {
$scope.check = function() {
if(/^([0-9])\1*$/.test($scope.value)) {
alert("Invalid number");
}
}
});
请参见您的意思是您知道正好存在5个整数,因此我将针对mod11111进行测试。您的意思是您知道正好存在5个整数,因此我将针对mod11111进行测试。嘿,您的regx不正确:-
用法:-/^\D*(\D)(?:\D*|\1)*$/.test($scope.value)
小提琴:-嘿,你的注册表不正确:-
用法:-/^\D*(\D)(?:\D*|\1)*$/.test($scope.value)
小提琴:-你确定你的正则表达式是正确的吗?请检查ng模式@没有人知道这是不对的。我刚试过。@Matthew有没有办法像我试过的那样用regex来做。是的。ng模式接受正则表达式并更新表单的无效标志。是否确定正则表达式正确?请改为签出ng模式@没有人知道这是不对的。我刚试过。@Matthew有没有办法像我试过的那样用regex来做。是的。ng模式接受正则表达式并更新表单的无效标志。谢谢您的回答。谢谢您的回答。