关于Javascript字符串BUG

我们在head中的<Script></Script>中写如下函数:

function Test()
{
var s="<script>document.write('abcdefg');</script>";
alert(s);
}

其他Body中的内容随便,这个时候我们用IE6,7,FireFox等浏览器打开,我们可以看到在第一排出现了内容“"; alert(s); } ”,这是怎么回事?我们再将我们这个函数改写如下:

function Test()
{
var s="<script>document.write('abcdefg');<"+"/script>";
alert(s);
}

这个时候我们第一次看到的那个字符串没有了。想必大家都应该明白了,这里很明显我们将""里面的内容是作为字符串的,但是浏览器却没有意识到这点,把我们当字符串用的</script>变成了脚本的结束标志。这点没有什么好办法,解决办法:把字符串写成第二种形式。

时间: 2024-09-20 09:19:06

关于Javascript字符串BUG的相关文章

JavaScript字符串插入、删除、替换函数使用示例

本文为大家介绍下JavaScript字符串的插入.删除.替换函数的在实际中的应用,想要学习的朋友可以参考下哈,希望对初学者有所帮助   说明: 以下函数中前两个函数取出查找字符串的前一部分和后一部分,以用于其他函数.注意,调用一次 replaceString(mainStr,searchStr,replaceStr) 函数,只能将字符串 mainStr 中最先找到的一个 searchStr 字符串替换为 replaceStr 字符串,并不能将字符串 mainStr 中所有的 searchStr

字符集-JavaScript字符串长度是字符长度还是16位编码长度?

问题描述 JavaScript字符串长度是字符长度还是16位编码长度? 根据<JavaScript权威指南>39页上所写的: 但是我试验了一下,发现e.length是1 啊 有人能给我解释一下嘛,感谢 解决方案 ud835udc52不是字母e 解决方案二: 就是包含的字符个数,跟内码没关系 解决方案三: 看得入迷了楼主,字符串的length属性就是有多少个字符,不要和内码混一起了

Javascript字符串常用方法详解_javascript技巧

字符串 字符串就是一个或多个排列在一起的字符,放在单引号或双引号之中. 'abc' "abc" length属性 js里的字符串类似于数组,都是一个一个字符拼凑在一起组成的,因此可以用length属性取得字符串的长度 var str = "hello" str.length; // 5 字符串常用的一些方法 1. charAt() str.charAt(n) => 返回字符串的第 n 个字符,如果不在 0~str.length-1之间,则返回一个空字符串. v

Javascript字符串拼接小技巧(推荐)_javascript技巧

在Javascript中经常会遇到字符串的问题,但是如果要拼接的字符串过长就比较麻烦了. 如果是在一行的,可读性差不说,如果要换行的,会直接报错. 在此介绍几种Javascript拼接字符串的技巧. 字符串相加(+) var items = '<li class="details">' + '<span>Hello world</span>' + '</li>'; 利用反斜线拼接字符串 var items = '<li class=

浅谈JavaScript字符串拼接_javascript技巧

在JavaScript中会经常遇到字符串拼接,但是如果要拼接的字符串过长就比较麻烦了. 如果在一行的话,可读性太差:如果换行的话,会直接报错. 现在就来介绍几个JavaScript拼接字符串的几个小技巧(主要针对字符串过长的情况). 1. 字符串相加(+) var empList = ' <li data-view-section="details">'+ '<span>Hello world</span>'+ '</li>'; 2.利用

Javascript字符串对象的常用方法简明版_基础知识

var a = "abcDEfGgdefg32asdf38"; document.write("原始:"+a+"<br />") document.write("粗体:"+a.bold()+"<br />"); document.write("大号:"+a.big()+"<br />"); document.write("

JavaScript 字符串常用操作小结(非常实用)_javascript技巧

字符串截取 1. substring() xString.substring(start,end) substring()是最常用到的字符串截取方法,它可以接收两个参数(参数不能为负值),分别是要截取的开始位置和结束位置,它将返回一个新的字符串,其内容是从start处到end-1处的所有字符.若结束参数(end)省略,则表示从start位置一直截取到最后. let str = 'www.jeffjade.com' console.log(str.substring(0,3)) // www co

Javascript 字符串模板的简单实现_javascript技巧

这是源于两年前,当我在做人生中第一个真正意义上的网站时遇到的一个问题 该网站采用前后端分离的方式,由后端的 REST 接口返回 JSON 数据,再由前端渲染到页面上. 同许多初学 Javascript 的菜鸟一样,起初,我也是采用拼接字符串的形式,将 JSON 数据嵌入 HTML 中.开始时代码量较少,暂时还可以接受.但当页面结构复杂起来后,其弱点开始变得无法忍受起来: 书写不连贯.每写一个变量就要断一下,插入一个 + 和 ".十分容易出错. 无法重用.HTML 片段都是离散化的数据,难以对其中

javascript字符串对象常用api函数小结(连接,替换,分割,转换等)_javascript技巧

本文实例讲述了javascript字符串对象常用api函数.分享给大家供大家参考,具体如下: 1. concat(str1,str2,···) 连接字符串 2. indexOf(str,start) 返回 str 在字符串中首次出现的位置 var str = "hello world"; str.indexOf("hello"); // 0 str.indexOf("o",5); // 7 str.indexOf("World"