用JavaScript转换字符串(不再工作了吗?)

时间:2016-08-13 21:34:48

标签: javascript

我不明白为什么我不能简单地转换我的字符串而它应该有效(当我想要转换单个字符时它可以工作但是当我想要转换时人物链它刚刚赢了。我错过了什么吗?谢谢!



var kkma_conv = {
  // comments blablabla
  '시/EPH': '',
}

function conversion_final(kkma) {
  var roman = kkma_conv[kkma];
  if (roman) {
    return roman;
  } else {
    return kkma;
  }
}

<script>
  function printconvert(form2) {
    var testin = document.form2.entree.value;
    var res = conversion_final(testin);
    document.form2.sortie.value = res.replace(/&#39;/g, "'");
  }
</script>

<table width="100%" border="0" align="left" cellpadding="0" cellspacing="0">
  <FORM NAME="form2">
    <tr>
      <td>
        <div align="left">Insert text :</div>
      </td>
      <td>
        <textarea name="entree" value="input" rows="30" cols="75" style="font-size:12px"></textarea>
      </td>
    </tr>
    <tr>
      <td></td>
      <td style="padding:5px">
        <INPUT TYPE="button" NAME="bouton" VALUE="CONVERT" onClick="printconvert(form2)">
      </td>
    </tr>
    <tr>
      <td>
        <div align="left">Conversion :</div>
      </td>
      <td>
        <textarea name="sortie" value="output" rows="30" cols="75" style="font-size:12px"></textarea>
      </td>
    </tr>
  </FORM>
</table>
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:2)

conversion_final("시/EPH")将返回"시/EPH",因为kkma_conv[kkma]是emptry字符串,它是假的,因此它会返回输入。

另据我所知&#39;可能是某些符号的html语法,但不是javascript,我不确定你打算在那里做什么(也许不是问题)。

答案 1 :(得分:1)

作为布尔表达式的

''将被计算为false。因此,if语句将失败并且将执行else语句。因此,您应该重新编写conversion_final函数,如下所示。

function conversion_final(kkma) {
    if (kkma_conv.hasOwnProperty(kkma)) { 
        return kkma_conv[kkma];
    } 
    else { 
        return kkma; 
    }
}