首页 > javascript变量加双引号的问题

javascript变量加双引号的问题

问题在代码的注释里:

<!DOCTYPE html>
<html>
<head>
    <title>Dynamic Script Example 2</title>
</head>
<body>
    <p>You should see an alert saying &quot;hi&quot; after clicking the button.</p>
    <input type="button" value="Add Script" onclick="addScript()">

    <script type="text/javascript">
    
        function loadScriptString(){
            var script = document.createElement("script");
            var code="function sayHi(){alert('hi');}";
            script.type = "text/javascript";
            try {
                script.appendChild(document.createTextNode(code));
            } catch (ex){
                script.text = "code";//就是这一行里的"code",
                //这里为什么不是字面上的code,
                //而是function sayHi(){alert('hi');}?
                //感觉反直觉。
                //试了下script.text = code;也是可以的。
            }
            document.body.appendChild(script);
        }
    
        function addScript(){
            loadScriptString();
            sayHi();
        }

    </script>
</body>
</html>

加了双引号就是字符串,没加就是变量


根本没执行到 catch 里吧,不知道楼主用的是什么浏览器?


加上引号就是字符串了啊

a = "code" 和 code 变量没关系

js 的双引号不像 php 那样,js 的双引号就是单引号。


没有执行到catch 你的代码并不会执行


的确没有执行到catch

【热门文章】
【热门文章】