JavaScript 全局
- 全局属性
- Infinity
代表正的无穷大的数值
- NaN
指示某个值是不是数字值
- undefined
指示未定义的值
- Infinity
- 全局函数
-
encodeURI()
把字符串编码为 URI
对于在 URI 中具有特殊含义的 ASCII 标点符号
, / ? : @ & = + $ #
,encodeURI() 函数是不会进行转义的
(可以使用 encodeURIComponent() 方法对特殊含义的 ASCII 标点符号进行编码). -
decodeURI()
解码某个编码的 URI
-
encodeURIComponent()
把字符串编码为 URI 组件
该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码:
- _ . ! ~ * ' ( )
其他字符(如; / ? : @ & = + $ , #
这些用于分隔 URI 组件的标点符号),都是由一个或多个十六进制的转义序列替换的 -
decodeURIComponent()
解码一个编码的 URI 组件
-
escape()
对字符串进行编码
-
unescape()
对由 escape() 编码的字符串进行解码
-
eval()
计算 JavaScript 字符串,并把它作为脚本代码来执行
-
isFinite()
检查某个值是否为有穷大的数
-
isNaN()
检查某个值是否是数字
-
Number()
把对象的值转换为数字
-
parseFloat()
解析一个字符串并返回一个浮点数
-
parseInt()
解析一个字符串并返回一个整数
-
String()
把对象的值转换为字符串
-
talk is cheap, show me the code.
举些例子
let url ='http://showdoc.itplh.com/web/#/4?page_id=10&token=123+456[; / ? : @ & = + $ , #]'
let encode_url = window.encodeURI(url)
let encode_url2 = window.encodeURIComponent(url)
console.log('encodeURI', encode_url)
console.log('encodeURIComponent', encode_url2)
console.log('decodeURI', decodeURI(encode_url))
console.log('decodeURIComponent', decodeURIComponent(encode_url2))
let str = 'hello world'
let escape_str = window.escape(str)
console.log('escape', escape_str)
console.log('unescape', unescape(escape_str))
输出
encodeURI http://showdoc.itplh.com/web/#/4?page_id=10&token=123+456%5B;%20/%20?%20:%20@%20&%20=%20+%20$%20,%20#%5D
encodeURIComponent http%3A%2F%2Fshowdoc.itplh.com%2Fweb%2F%23%2F4%3Fpage_id%3D10%26token%3D123%2B456%5B%3B%20%2F%20%3F%20%3A%20%40%20%26%20%3D%20%2B%20%24%20%2C%20%23%5D
decodeURI http://showdoc.itplh.com/web/#/4?page_id=10&token=123+456[; / ? : @ & = + $ , #]
decodeURIComponent http://showdoc.itplh.com/web/#/4?page_id=10&token=123+456[; / ? : @ & = + $ , #]
escape hello%20world
unescape hello world