![JavaScript从入门到精通(微视频精编版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/726/32463726/b_32463726.jpg)
4.7 内置函数
![](https://epubservercos.yuewen.com/FAB06F/17527145906009606/epubprivate/OEBPS/Images/Figure-P86_8178.jpg?sign=1739522108-DKw2i6GIrpM7RyErTRyhWwd5G3XtLrA8-0-45015eedad3b615d89cd5bde604cab59)
视频讲解
在使用JavaScript语言时,除了可以自定义函数之外,还可以使用JavaScript的内置函数,这些内置函数是由JavaScript语言自身提供的函数。JavaScript中的一些主要内置函数如表4.1所示。
表4.1 JavaScript中的一些内置函数
![](https://epubservercos.yuewen.com/FAB06F/17527145906009606/epubprivate/OEBPS/Images/Figure-T87_39098.jpg?sign=1739522108-oIgLBrubDtO1uIMGkEgFqKx1mXINttDG-0-c0e6862728f0d41b184bba1645c91b9a)
下面将对这些内置函数做详细介绍。
4.7.1 数值处理函数
1.parseInt()函数
parseInt()函数主要将首位为数字的字符串转换成数字,如果字符串不是以数字开头,那么将返回NaN。
语法如下:
parseInt(string,[n])
参数说明。
string:需要转换为整型的字符串。
n:用于指出字符串中的数据是几进制的数据。这个参数在函数中不是必需的。
例如,将字符串转换成数字的示例代码如下:
01 var str1="123abc"; //定义字符串变量 02 var str2="abc123"; //定义字符串变量 03 document.write(parseInt(str1)+"<br>"); //将字符串str1转换成数字并输出 04 document.write(parseInt(str1,8)+"<br>"); //将字符串str1中的八进制数字进行输出 05 document.write(parseInt(str2)); //将字符串str2转换成数字并输出
运行结果为:
123 83 NaN
2.parseFloat()函数
parseFloat()函数主要将首位为数字的字符串转换成浮点型数字,如果字符串不是以数字开头,那么将返回NaN。
语法如下:
parseFloat(string)
参数说明。
string:需要转换为浮点型的字符串。
例如,将字符串转换成浮点型数字的示例代码如下:
01 var str1="123.456abc"; //定义字符串变量 02 var str2="abc123.456"; //定义字符串变量 03 document.write(parseFloat(str1)+"<br>"); //将字符串str1转换成浮点数并输出 04 document.write(parseFloat(str2)); //将字符串str2转换成浮点数并输出
运行结果为:
123.456 NaN
3.isNaN()函数
isNaN()函数主要用于检验某个值是否为NaN。
语法如下:
isNaN(num)
参数说明。
num:需要验证的数字。
说明
如果参数num为NaN,函数返回值为true;如果参数num不是NaN,函数返回值为false。
例如,判断其参数是否为NaN的示例代码如下:
01 var num1=123; //定义数值型变量 02 var num2="123abc"; //定义字符串变量 03 document.write(isNaN(num1)+"<br>"); //判断变量num1的值是否为NaN并输出结果 04 document.write(isNaN(num2)); //判断变量num2的值是否为NaN并输出结果
运行结果为:
false true
4.isFinite()函数
isFinite()函数主要用于检验其参数是否有限。
语法如下:
isFinite(num)
参数说明。
num:需要验证的数字。
说明
如果参数num是有限数字(或可转换为有限数字),函数返回值为true;如果参数num是NaN或无穷大,函数返回值为false。
例如,判断其参数是否为有限的示例代码如下:
01 document.write(isFinite(123)+"<br>"); //判断数值123是否为有限并输出结果 02 document.write(isFinite("123abc")+"<br>"); //判断字符串"123abc"是否为有限并输出结果 03 document.write(isFinite(1/0)); //判断1/0的结果是否为有限并输出结果
运行结果为:
true false false
4.7.2 字符串处理函数
1.eval()函数
eval()函数的功能是计算字符串表达式的值,并执行其中的JavaScript代码。
语法如下:
eval(string)
参数说明。
string:需要计算的字符串,其中含有要计算的表达式或要执行的语句。
例如,应用eval()函数计算字符串的示例代码如下:
01 document.write(eval("3+6")); //计算表达式的值并输出结果 02 document.write("<br>"); //输出换行标签 03 eval("x=5;y=6;document.write(x*y)"); //执行代码并输出结果
运行结果为:
9 30
2.encodeURI()函数
encodeURI()函数主要用于将URI字符串进行编码。
语法如下:
encodeURI(url)
参数说明。
url:需要编码的URI字符串。
说明
URI与URL都可以表示网络资源地址,URI比URL表示范围更加广泛,但在一般情况下,URI与URL可以是等同的。encodeURI()函数只对字符串中有意义的字符进行转义。例如将字符串中的空格转换为“%20”。
例如,应用encodeURI()函数对URI字符串进行编码的示例代码如下:
01 var URI="http://127.0.0.1/save.html?name=测试"; //定义URI字符串 02 document.write(encodeURI(URI)); //对URI字符串进行编码并输出
运行结果为:
http://127.0.0.1/save.html?name=%E6%B5%8B%E8%AF%95
3.decodeURI()函数
decodeURI()函数主要用于对已编码的URI字符串进行解码。
语法如下:
decodeURI(url)
参数说明。
url:需要解码的URI字符串。
说明
此函数可以将使用encodeURI()函数转码的网络资源地址转换为字符串并返回,也就是说,decodeURI()函数是encodeURI()函数的逆向操作。
例如,应用decodeURI()函数对URI字符串进行解码的示例代码如下:
01 var URI=encodeURI("http://127.0.0.1/save.html?name=测试"); //对URI字符串进行编码 02 document.write(decodeURI(URI)); //对编码后的URI字符串进行解码并输出
运行结果为:
http://127.0.0.1/save.html?name=测试