单例模式
单例模式,也叫单子模式,是一种常用的软件设计模式。在应用这个模式时,单例对象的类必须保证只有一个实例存在
。许多时候整个系统只需要拥有一个的全局对象,这样有利于我们协调系统整体的行为。比如在某个服务器程序中,该服务器的配置信息存放在一个文件中,这些配置数据由一个单例对象统一读取,然后服务进程中的其他对象再通过这个单例对象获取这些配置信息。这种方式简化了在复杂环境下的配置管理。
Blob 对象
URL
一般来说,URL只能使用英文字母、阿拉伯数字和某些标点符号,不能使用其他文字和符号。
1. 网址路径的编码,用的是utf-8编码 eg: www.这是一个网址路径的编码.com
2. 查询字符串的编码,用的是操作系统的默认编码
3. GET和POST方法的编码,这时的编码方法由网页的编码决定.就是在html代码里的值确定。
4. Ajax时的URL,IE会用系统默认的字符编码,而其他现代主流浏览器,还是用的utf-8.
js中的几个编码函数
-
escape()
除了ASCII字母、数字、标点符号"@ * _ + - . /"以外,对其他所有字符进行编码。在\u0000到\u00ff之间的符号被转成%xx的形式,其余符号被转成%uxxxx的形式。对应的解码函数是unescape().
escape()不对"+"编码。但是我们知道,网页在提交表单的时候,如果有空格,则会被转化为+字符。服务器处理数据的时候,会把+号处理成空格。 encodeURI 和 encodeURIComponent
这两个的区别在于,后者会把传入的字符串完全的encode掉,包括& / = 等。而前者保留浏览器的; / ? : @ & = + $ , #
有些符号在URL中是不能直接传递的,如果要在URL中传递这些特殊符号,那么就要使用他们的编码了。编码的格式为:%加字符的ASCII码,即一个百分号%,后面跟对应字符的ASCII(16进制)码值。例如 空格的编码值是"%20"。
下表中列出了一些URL特殊符号及编码
十六进制值
1. + URL 中+号表示空格 %2B
2. 空格 URL中的空格可以用+号或者编码 %20
3. / 分隔目录和子目录 %2F
4. ? 分隔实际的 URL 和参数 %3F
5. % 指定特殊字符 %25
6. # 表示书签 %23
7. & URL 中指定的参数间的分隔符 %26
8. = URL 中指定参数的值 %3D
js控制页面跳转
window.location.href = 'xxxxx'
上面这种页面地址跳转,是写进了浏览器的history的,可以前进后退。
location.href只作用于本页面,window.navigator()作用于浏览器。如果在frames框架下,前者只改变一个框架内的url,后者是整个浏览器改变路径
window.location.replace("");这个在当前页面替换,不会进入history。后退的话就等于之前页面的后退。
<meta http-equiv="refresh" content="5" /> 5s后刷新本页面
<meta http-equiv="refresh" content="5; url=http://xxxxx/" /> 5s后转向xxxx页面
----- end -------
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。