Javascript自动将字符串解析为int

Javascript自动将字符串解析为int,javascript,Javascript,我正在从JSP页面中的onclick事件调用JavaScript函数 <% String value = "06654" %> <body> <a href="javascript://" onclick="myFunction(<%= value %>)">Click Me!</a> </body> myString等于06654,但当我提醒它的值时,我得到了6654。如何阻

我正在从JSP页面中的onclick事件调用JavaScript函数

    <%
       String value = "06654"
    %>

  <body>
   <a href="javascript://" onclick="myFunction(<%= value %>)">Click Me!</a>
  </body>

myString等于06654,但当我提醒它的值时,我得到了6654。如何阻止js自动将字符串解析为int?

如果将字符串输出到页面中,结果将是

… onclick="myFunction(06654)" …
这显然被解释为一个数字。要使其成为JavaScript字符串,请在其周围加引号:

… onclick="myFunction('<%= value %>')" …
…onclick=“myFunction(“”)”…

它不会自动执行此操作(除非您与处理数字的运算符一起使用
myString
)。您必须以某种方式处理传递给
myFunction
的参数。它不会自动执行此操作,我仍然在这里得到“0”:您传递给myFunction的是什么?它必须是一个int.calltoString,不管你传递给它什么。你能在上面发布你如何实际调用这个函数吗?这将使这更容易。看看生成的源代码。如果传递给
myFunction
的值未括在引号中,则该值将被解释为数字。您可能需要
myFunction(“”)
。字符串在JavaScript中由引号分隔(与许多其他语言一样)。请注意,部分代码(
)在服务器上运行,然后由客户端对其输出进行评估。
… onclick="myFunction('<%= value %>')" …