关于js解析的一点小问题

先来看一下下面的一段代码有什么问题?

<html>
<head>
<script src="./jquery.min.js"></script>

</head>
<body>
<div id="test"></div>
<script>
var str = '<script src="./test.js"></script>';
$("#test").append(str);

</script>

</body>
</html>

 

 

在谷歌(v53)和ff(v48)中都在var str ....这一句报错了。

为毛?因为<script>和str定义中包住的script匹配了,没想到你是这样的匹配。

再深入下去就是浏览器内核的解释问题了。所以暂时打住。

如果把这个script放到其他js文件中引用则不会有问题(这不废话吗)。。。

或者做一下转义:

var str = '<script src="./test.js"><\/script>';

 

顺带一提的就是,上面这种动态插入的js在chrome的console的source中是看不到的,例如我上面插入的test.js(是我打开方式不对?)

要测试上述代码需放在在服务器下,随便弄个python,node也是分分钟起服务的啦。

为什么要放服务器下?因为动态插入的xml其实是用ajax请求回来的,所以看到有些js请求奇奇怪的,

例如test.js?_=1474977450655,后面带一串时间戳,九成(成数明显是吹的,你也当真啊?)可以认为它是ajax请求回来的。

 

此处必须加一个:完。

转载于:https://www.cnblogs.com/riversHahaha/p/5914099.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值