JavaScript从入门到精通(微视频精编版)
上QQ阅读APP看书,第一时间看更新

4.7 内置函数

视频讲解

在使用JavaScript语言时,除了可以自定义函数之外,还可以使用JavaScript的内置函数,这些内置函数是由JavaScript语言自身提供的函数。JavaScript中的一些主要内置函数如表4.1所示。

表4.1 JavaScript中的一些内置函数

下面将对这些内置函数做详细介绍。

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=测试