解码编码
encodeURI()
• 语法:encodeURI(URIstring)
• 参数:
参数 类型 描述 备注
URIstring String 一个字符串,含有 URI 或其他要编码的文本。 必需
• 返回值:String
其中的某些字符将被十六进制的转义序列进行替换。
• 描述:把字符串编码为 URI。
该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ' ( )
该方法的目的是对 URI 进行完整的编码,因此对以下在 URI 中具有特殊含义的 ASCII 标点符号,encodeURI() 函数是不会进行转义的:;/?:@&=+$,#
• 注意:
如果 URI 组件中含有分隔符,比如 ? 和 #,则应当使用 encodeURIComponent() 方法分别对各组件进行编码。
• 支持版本:2.9+
• 示例:
在本例中,我们将使用encodeURI() 对字符串进行解码:
alert(encodeURI("http://www.d-heaven.com/hello world/"));
alert(encodeURI("-_.!~*'()"));
alert(encodeURI(";/?:@&=+$,#"));
提示:
http://www.d-heaven.com/hello%20world/
-_.!~*'()
;/?:@&=+$,#
decodeURI()
• 语法:
decodeURI(URIstring);
• 参数:
参数 类型 描述 备注
URIstring String 一个字符串,含有要解码的 URI 或其他要解码的文本。 必需
• 返回值:String
• 描述:解码某个编码的 URI。decodeURI() 函数可对 encodeURI() 函数编码过的 URI 进行解码。
• 注意:
• 支持版本:2.9+
• 示例:
在本例中,我们将使用 decodeURI() 对一个编码后的 URI 进行解码:
var uri = encodeURI('http://www.d-heaven.com/hello world/');
alert(uri);
alert(decodeURI(uri));
• 提示:
http://www.d-heaven.com/hello%20world/
http://www.d-heaven.com/helloworld/
encodeURIComponent()
• 语法:
encodeURIComponent(URIstring);
• 参数:
参数 类型 描述 备注
URIstring String 一个字符串,含有 URI 组件或其他要编码的文本。 必需
• 返回值:String
• 描述:把字符串作为 URI 组件进行编码。
该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ' ( )
其他字符(比如 :;/?:@&=+$,# 这些用于分隔 URI 组件的标点符号),都是由一个或多个十六进制的转义序列替换的。
• 注意:
encodeURIComponent()函数与encodeURI()函数的区别之处,前者假定它的参数是URI的一部分(比如协议、主机名、路径或查询字符串)。因此
encodeURIComponent()函数将转义用于分隔URI各个部分的标点符号。
• 支持版本:2.9+
• 示例:
在本例中,我们将使用encodeURIComponent()字符串进行解码:
alert(encodeURIComponent("http://www.d-heaven.com/hello world/"));
alert(encodeURIComponent("-_.!~*'()"));
alert(encodeURIComponent(";/?:@&=+$,#"));
• 提示:
http%3A%2F%2Fwww.d-heaven.com%2Fhello%20world%2F
-_.!~*'()
%3B%2F%3F%3A%40%26%3D%2B%24%2C%23
decodeURIComponent()
• 语法:
decodeURIComponent(URIstring);
• 参数:
参数 类型 描述 备注
URIstring String 一个字符串,含有编码 URI 组件或其他要解码的文本。 必需
• 返回值:String
• 描述:解码一个编码的 URI 组件。decodeURIComponent() 函数可对 encodeURIComponent() 函数编码的 URI 进行解码。
• 注意:
• 支持版本:2.9+
• 示例:
在本例中,我们将使用 decodeURIComponent() 对编码后的 URI 进行解码:
var uri = encodeURIComponent('http://www.d-heaven.com/hello world/');
alert(uri);
alert(decodeURIComponent(uri));
• 提示:
http%3A%2F%2Fwww.d-heaven.com%2Fhello%20world%2F
http://www.d-heaven.com/hello
world/
escape()
• 语法:
escape(string);
• 参数:
参数 类型 描述 备注
string String 要被转义或编码的字符串。 必需
• 返回值:String
已编码的 string 的副本。其中某些字符被替换成了十六进制的转义序列。
• 描述:对字符串进行编码,这样就可以在所有的计算机上读取该字符串。
该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . * / @ +。其他所有的字符都会被转义序列替换。
• 注意:
可以使用 unescape() 对 escape() 编码的字符串进行解码。
根据W3C标准,应用使用 encodeURI() 和 encodeURIComponent() 替代它。
• 支持版本:2.9+
• 示例:
在本例中,我们将使用escape() 来编码字符串:
alert(escape("http://www.d-heaven.com/hello world/"));
alert(escape("-_.!~*'()"));
alert(escape(";/?:@&=+$,#"));
• 提示:
http%3A//www.d-heaven.com/hello%20world/
-_.%21%7E*%27%28%29
%3B/%3F%3A@%26%3D+%24%2C%23
unescape()
• 语法:
unescape(string);
• 参数:
参数 类型 描述 备注
string String 要解码或反转义的字符串。 必需
• 返回值:String
string 被解码后的一个副本。
• 描述:对由 escape() 编码的字符串进行解码。
该函数的工作原理是这样的:通过找到形式为%xx和%uxxxx的字符序列(x表示十六进制的数字),用Unicode字符\u00xx和\uxxxx替换这样的字符序列进行解码。
• 注意:
可以使用 unescape() 对 escape() 编码的字符串进行解码。
根据W3C标准,应用使用 decodeURI() 和 decodeURIComponent() 替代它。
• 支持版本:2.9+
• 示例:
在本例中,我们将使用escape() 来编码字符串:
var str = escape('http://www.d-heaven.com/hello world/');
alert(str);
alert(unescape(str));
• 提示:
http%3A//www.d-heaven.com/hello%20world/
http://www.d-heaven.com/hello
world/
eval()
• 语法:
eval(string);
• 参数:
参数 类型 描述 备注
string String 要计算的字符串,其中含有要计算的 JavaScript 表达式或要执行的语句。 必需
• 返回值:Var
• 描述:计算 JavaScript 字符串,并把它作为脚本代码来执行。
• 注意:
该方法只接受原始字符串作为参数,如果string参数不是原始字符串,那么该方法将不作任何改变地返回。因此请不要为eval()函数传递String对象来作为参数。
如果试图覆盖eval属性或把eval()方法赋予另一个属性,并通过该属性调用它,则 ECMAScript实现允许抛出一个EvalError异常。
• 支持版本:2.9+
• 示例:
在本例中,我们将使用eval() 来运行字符串脚本:
alert(eval("x=10;y=50;x+y;"));
var a = 10;
alert(eval("a*5"));
• 提示:
60
50
isFinite()
• 语法:
isFinite(number);
• 参数:
参数 类型 描述 备注
number Number 要检测的数字。 必需
• 返回值:Boolean
如果number是有限数字(或可转换为有限数字),那么返回true。否则,如果number是NaN(非数字),或者是正、负无穷大的数,则返回false。
• 描述:检查某个值是否为有穷大的数。
• 注意:
• 支持版本:2.9+
• 示例:
isNaN()
• 语法:
isNaN();
• 参数:
参数 类型 描述 备注
x Var 要检测的值。 必需
• 返回值:Boolean
如果x是特殊的非数字值NaN(或者能被转换为这样的值),返回的值就是true。如果x是其他值,则返回false。
• 描述:检查某个值是否是数字。
isNaN()函数可用于判断其参数是否是NaN,该值表示一个非法的数字(比如被0除后得到的结果);
如果把NaN与任何值(包括其自身)相比得到的结果均是false,所以要判断某个值是否是NaN,不能使用==或===运算符。正因为如此,isNaN() 函数是必需的。
• 注意:
isNaN()函数通常用于检测parseFloat()和parseInt()的结果,以判断它们表示的是否是合法的数字。当然也可以用isNaN()函数来检测算数错误,比如用0作除数的情况。
• 支持版本:2.9+
• 示例:
parseFloat()
• 语法:
parseFloat(string);
• 参数:
参数 类型 描述 备注
string String 要被解析的字符串。 必需
• 返回值:Number
返回解析后的数字。
• 描述:解析一个字符串并返回一个浮点数。
只有字符串中的第一个数字会被返回;
开头和结尾的空格是允许的;
• 注意:
如果字符串的第一个字符不能被转换为数字,那么parseFloat()会返回NaN;
如果只想解析数字的整数部分,请使用parseInt()方法;
• 支持版本:2.9+
• 示例:
parseInt()
• 语法:
parseInt(string, radix);
• 参数:
参数 类型 描述 备注
string String 要被解析的字符串 必需
radix Number 表示要解析的数字的基数。该值介于2 ~ 36之间;
如果省略该参数或其值为0,则数字将以10为基础来解析;如果它以"0x"或"0X"开头,将以16为基数;
如果该参数小于2或者大于36,则parseInt()将返回NaN。 可选
• 返回值:Number
返回解析后的数字。
• 描述:解析一个字符串并返回一个整数。
当参数radix的值为0,或没有设置该参数时,parseInt() 会根据string来判断数字的基数。如果string以"0x"开头,parseInt()会把string的其余部分解析为十六进制的整数。如果string以0 ~ 9的数字开头,parseInt()将把它解析为十进制的整数。
• 注意:
只有字符串中的第一个数字会被返回;
开头和结尾的空格是允许的;
如果字符串的第一个字符不能被转换为数字,那么parseInt()会返回NaN;
• 支持版本:2.9+
• 示例:
Number()
• 语法:
Number(object);
• 参数:
参数 类型 描述 备注
object Object JavaScript 对象。 必需
• 返回值:Number
返回转换后的数字。
• 描述:把对象的值转换为数字。
如果参数是Date对象,Number()返回从1970年1月1日至今的毫秒数;
如果对象的值无法转换为数字,那么Number()函数返回NaN。
• 注意:
只有字符串中的第一个数字会被返回;
开头和结尾的空格是允许的;
如果字符串的第一个字符不能被转换为数字,那么parseInt()会返回NaN;
• 支持版本:2.9+
• 示例:
String()
• 语法:
String(object);
• 参数:
参数 类型 描述 备注
object Object JavaScript 对象。 必需
• 返回值:String
返回转换后的字符串。
• 描述:把对象的值转换为字符串。
• 注意:
• 支持版本:2.9+
• 示例:

全部 0条评论