2017-09-12 7 views
0

私はIDがcuitの入力があり、アルゼンチンでこの入力を検証する必要があります。私はこのコードを見つけましたが、今はcuitが有効かどうかを知るためのアラートや何かを実行したいと思います。cuitが有効かどうか警告する方法は?

どうすればいいですか?

function validaCuit(sCUIT) { 
    var aMult = '5432765432'; 
    var aMult = aMult.split(''); 

    if (sCUIT && sCUIT.length == 11) { 
     aCUIT = sCUIT.split(''); 
     var iResult = 0; 
     for (i = 0; i <= 9; i++) { 
      iResult += aCUIT[i] * aMult[i]; 
     } 
     iResult = (iResult % 11); 
     iResult = 11 - iResult; 

     if (iResult == 11) iResult = 0; 
     if (iResult == 10) iResult = 9; 

     if (iResult == aCUIT[10]) { 
      return true; 
     } 
    } 
    return false; 
} 
+1

オム、 'アラート(validaCuit(sCUIT)) ';'は本当かfaかを警告しますlse、関数が動作していると仮定してください – adeneo

+0

エラーチェックのためにJavaScriptで 'alert()'を使用しないでください。あるいは、UXについて少しでも心配しているのであれば、まったく使用しないでください(https://softwareengineering.stackexchange。 com/a/106039) – GrumpyCrouton

答えて

1

あなたは真/偽の出力を好まない場合は三項演算子があなたの友人である(?):

alert(validaCuit("1234") ? "Valid Input!" : "Wrong input!"); 
0

関数は値を返します。その値はalertである必要があります。

また、FYIでは、関数内のすべての変数が正しく宣言されていることを確認してください。

function validaCuit(sCUIT) 
 
{ 
 
    var aMult = '5432765432'; 
 
    var aMult = aMult.split(''); 
 

 
    if (sCUIT && sCUIT.length == 11) 
 
    { 
 
     aCUIT = sCUIT.split(''); 
 
     var iResult = 0; 
 
     for(i = 0; i <= 9; i++) 
 
     { 
 
      iResult += aCUIT[i] * aMult[i]; 
 
     } 
 
     iResult = (iResult % 11); 
 
     iResult = 11 - iResult; 
 

 
     if (iResult == 11) iResult = 0; 
 
     if (iResult == 10) iResult = 9; 
 

 
     if (iResult == aCUIT[10]) 
 
     { 
 
      return true; 
 
     } 
 
    } 
 
    return false; 
 

 
} 
 

 
alert(validaCuit("12345678911")); 
 
alert(validaCuit("1234567891"));

-1

function validaCuit(sCUIT) 
 
{ 
 
    var aMult = '5432765432'; 
 
    var aMult = aMult.split(''); 
 

 
    if (sCUIT && sCUIT.length == 11) 
 
    { 
 
     aCUIT = sCUIT.split(''); 
 
     var iResult = 0; 
 
     for(i = 0; i <= 9; i++) 
 
     { 
 
      iResult += aCUIT[i] * aMult[i]; 
 
     } 
 
     iResult = (iResult % 11); 
 
     iResult = 11 - iResult; 
 

 
     if (iResult == 11) iResult = 0; 
 
     if (iResult == 10) iResult = 9; 
 

 
     if (iResult == aCUIT[10]) 
 
     { 
 
      alert('CUIT is correct!'); 
 
      return true; 
 
     } 
 
    } 
 
    
 
    alert('CUIT is incorrect!'); 
 
    return false; 
 

 
}

+0

このコードをご覧いただきありがとうございます。すぐに役立つかもしれません。なぜこれが問題の良い解決策であるのかを示すことによって、適切な説明が教育上の価値を大幅に改善し(https://meta.stackexchange.com/q/114762)、将来の類似した読者にとっては、しかし、同一ではない質問。説明を追加するためにあなたの答えを編集し、どのような制限と前提が適用されるかを示してください。 – GrumpyCrouton

関連する問題