将Javascript代码存储在javascript变量中

时间:2014-08-03 12:56:18

标签: javascript string

我正在尝试生成javascript代码段,然后将其放到textarea中,以便用户可以复制准备好的javascript代码。

如何存储这样的东西

"<script type='text/javascript'> 
  function init_map(){
  var myOptions = {
    zoom:14,center:new google.maps.LatLng(33.7593664,-118.14817399999998),
    mapTypeId: google.maps.MapTypeId.ROADMAP};
  }
</script>"

在javascript变量中?

3 个答案:

答案 0 :(得分:1)

var abc = "<script type='text/javascript'>\n" + 
  "function init_map(){\n"+
  "var myOptions = {\n"+
   "zoom:14,center:new google.maps.LatLng(33.7593664,-118.14817399999998),\n"+
    "mapTypeId: google.maps.MapTypeId.ROADMAP};\n"+
  "}\n"+
"<\/script>";
alert(abc);

这是fiddle

答案 1 :(得分:0)

您可以使用\字符继续以下行中的字符串,也可以使用\n字符创建新行,如下所示:

var string = "<script type='text/javascript'>\n\
  function init_map(){\n\
  var myOptions = {\n\
    zoom:14,center:new google.maps.LatLng(33.7593664,-118.14817399999998),\n\
    mapTypeId: google.maps.MapTypeId.ROADMAP};\n\
  }\n\
<\/script>" // the / in </script> needs also to be escaped

document.getElementById('your-text-area-id').value = string;

在您的文本区域中,您将看到:

screenshot

答案 2 :(得分:0)

你可以照常进行..只需一个ASCII字符串,所以:

var temp = "<script type='text/javascript'>\n"+
"\tfunction init_map(){\n"+
"\tvar myOptions = {\n"+
"\t\tzoom:14,center:new google.maps.LatLng(33.7593664,-118.14817399999998),\n"+
"\t\tmapTypeId: google.maps.MapTypeId.ROADMAP};\n"+
"\t}\n"+
"<\/script>";

但我建议使用“pre”html标签来显示代码。 一切都是品味和可维护性的问题。

我确信有更优雅的方式来处理代码示例显示。

您可以随时使用开源JavaScript代码美化器,可以输出有效的HTML等。 看看这个项目: https://github.com/beautify-web/js-beautify

它支持流行的http://jsbeautifier.org/