javascript 未结束的字符串常量
今天在做JAVASCRIPT的时候,发现老是出现”未结束的字符串常量”.
自己找了下应该是传参数的时候,有特殊字符引起的.网上也找了下,也有好多出现这种情况.做下总结,以方便以后查阅.
1.JAVASCRIPT引用时,使用的字符语言不一致.
比如:<script type=”text/javascript” src=”xxx.js” charset=”UTF-8″>.xxx.js文件内部使用的是GB2312的格式,外面调用使用的是UTF-8,所以文件内部部分特殊字符因为格式不一致,出现乱码,造成此原因.
2.JAVASCRIPT输出HTML字符时,前后标记不匹配.
这种比较常见,往往在输出字符串时,出现单引号(’)或双引号(”)不配对,或者是在document.write()的时候,没有正确输出单引号(’)或双引号(”)
3.参数内出现HTML标记语言或包含换行符
我今天所遇到的是这种情况.因为我所得到的数据以参数形式传给一函数,结果该数据里包含换行符,造成了此错误.
如:一般测试时只使用单行的数据,是正常的,未出现这个错误,.
当测试时使用多行数据,并使用回车链换行,就出行了此错误.因为里面包含了换行符
对于第3种情况,我的解决方法是:不直接将该数据以参数形式传递,而是先将其赋值在一个隐藏的文本内,需要调用的函数里只需读取该文本里的内容即可.
相关文档:
with语句
用于设置代码特定对象的作用域。
例:
var sMessage = "hello world";
with(sMessage)
{
&nbs ......
闭包:
ECMAScript支持闭包。所谓闭包,就是函数能使用函数外定义的变量。
var iBaseNum = 10;
function addNumbers(iNum1, iNum2)
{
function doAddition()
......
正在看 javascript高级程序设计 ,其中关于分组里面的一句代码不是太理解:
通过配合使用String对象的replace()方法及反向引用,就可以定义自己的trim()方法:
String.prototype.trim = function() {
var reExtraSpace = /^\s+(.*?)\s+$/;
return this.replace(reExtraSpace,"$1");
}
一开始怎么也不 ......
特殊JavaScript脚本:
1.禁用(恢复)href超级链接.
2.javascript中调用vbs对话框实现Confirm,可以显示Yes,No,还有各种图标,仅IE下有效.
3.限制上传文件类型为jpg.
4.限制离开当前页面,在离开时提示.仅限制窗口关闭或通过某个href超级链接离开.(页面刷新和地址栏改变时不提示)
demo.html如下:
<html>
&n ......
Arguments
该对象代表正在执行的函数和调用它的函数的参数。
[function.]arguments[n]
参数
function :选项。当前正在执行的 Function 对象的名字。
n :选项。要传递给 Function 对象的从0开始的参数值索引。
说明
Arguments是进行函数调用时,除了指定的参数外,还另外创建的一个隐藏对象。Arguments是一个类似 ......