在比较字符串时参数列表之后丢失)

时间:2017-03-15 23:02:36

标签: javascript html

我有一个触发函数compareArea()的按钮。它看起来像这样:

<button id="compare" onclick="compareArea()" type="button">Compare</button>

<script>
function compareArea() {
        alert( "string1" ~= "string2" );
    }
</script>

但是,我返回错误missing ) after argument list。出了什么问题?

1 个答案:

答案 0 :(得分:1)

据我所知,没有简单的比较可以告诉你有多少个字符不同。你能做的是:

  1. 检查哪个字符串更短。这里没有问题,如果两个字符串长度相同但是一个字符串比另一个字符串短,我们在遍历它们时达到死胡同。
  2. 迭代所有角色,比较每一个角色。
  3. 在每次不匹配的情况下增加一个计数器。
  4. 看起来像这样:

    <button id="compare" onclick="compareArea()" type="button">Compare</button>
    
    <script>
      function compareArea() {
        var string1 = "string1";
        var string2 = "string2";
        var shortest;
        var count = 0;
    
        if(string1.length === string2.length) {
          shortest = string1;
        } else if(string1.length < string2.length) {
          shortest = string1;
          count = string2.length - string1.length;
        } else if(string1.length > string2.length) {
          shortest = string2;
          count = string1.length - string2.length;
        }
    
        for (var i=0; i < shortest.length; i++) {
         if(string1.charAt(i) !== string2.charAt(i)) {
           count++;
         }
        }
        alert(count);
      }
    </script>