JavaScript中包含的几个预定义函数详解

JavaScript中共包含6种类型的预定义函数:

 

(1) eval函数

 

eval(expr) 将对expr进行求值。expr的最终结果应该是一个数字字符串,比如:“342”,‘34‘等,而不是像"fd32",'fda3‘这样。运用eval()函数的目的是将字符串变为数字。expr可以是一个表达式,也可以是一个或多个JavaScript语句。

 

示例代码:

<html>
<head>
<title>test</title>
<script language="JavaScript">
function computer(num)
{
   return eval(num)+eval(num);
}
</script>
</head>

<body>
<script language="JavaScript">
document.write(computer('322'));
</script>
</body>
</html>

结果显示为:644;

 

如果num参数不为数字字符串,如:“24fd",则浏览器将不会显示任何东西。

 

 (2) isFinite函数

 

isFinite(number)是用来确定参数是否是一个有限数值。即,如果该参数为非数字,正无穷数,或负无穷数,则返回false,否则返回true;如果是字符串类型的数字,将会自动转化为数字型。

 

示例代码:

<html>
<head>
<title>test</title>
<script language="JavaScript">
function computer(num)
{
   return isFinite(num);
}
</script>
</head>

<body>
<script language="JavaScript">
document.write(computer('322'));
</script>
</body>
</html>

结果显示为:true;

 

如果num参数不为数字字符串,如:“24fd",则会显示false。

 

 

(3)isNaN函数

 

isNaN(num)函数是用来计算一个参数以确定它是否为非数字,注意是非数字,初学者经常会误以为是数字,确定是否为数字则是用前面所说的isFinite();如果是参数是字符串类型的数字,将会自动转化为数字型。

 

示例代码:

<html>
<head>
<title>test</title>
<script language="JavaScript">
function computer(num)
{
   return isNaN(num);
}
</script>
</head>

<body>
<script language="JavaScript">
document.write(computer('322'));
</script>
</body>
</html>

 现在则会显示:false,因为'322'虽是字符串,但是先转化为数字了;如果将参数num改为'fda32'则会显示true;

 

(4)parseInt和parseFloat函数

 

这两个函数都是装数字字符串转化为一个数值.具体的做法如下:

parseInt(str[,radix])  前面那个str是数字字符串,如'111111111'后面那个radix是确定前面str的进制数,比如前那个'11111111'的radix就是2,也就是说,这里应该写为parseInt('11111111',2)其结果就为255;再比如:parseInt('A',16)的结果为10.即按照radix这个基数,使前面那个str转化为十进制数.如果基数省略或者或者它与str的首字符相矛盾时,JavaScript基数是基于字符串str的第一个字符,当第一个字符不能转换为基于基数的数字时,则返回NaN.

 

parseFloat(str) 直接提取数字部分,都是以十进制计算.即如果str的值为'11'那么计算结果就是11,而不是3或者B.如果处理的字符不是以数字开头,则返回NaN.如果字符后面出现非字符部分,则只取前面数字部分.

 

示例1:

<html>
<head>
<title>test</title>
<script language="JavaScript">
function computer(num)
{
   return parseFloat(num);
}
</script>
</head>

<body>
<script language="JavaScript">
document.write(computer('1101'));
</script>
</body>
</html>

 结果显示:1101

 

示例2:

 

<html>
<head>
<title>test</title>
<script language="JavaScript">
function computer(num,m)
{
   return parseInt(num,m);
}
</script>
</head>

<body>
<script language="JavaScript">
document.write(computer('111',2));
</script>
</body>
</html>

 显示结果:7

 

(5)Number和String函数

 

Number和String函数主要用来将对象转换为数字或字符串:

1.转换为字符型:String(); 例:String(678)的结果为"678"
2.转换为数值型:Number(); 例:Number("678")的结果为678

 

<html>
<head>
<title>test</title>
</head>
<body>
<script language="JavaScript">
document.write(Number('323')+Number('323'));
</script>
</body>
</html>

 结果显示为:646

 

<html>
<head>
<title>test</title>
</head>
<body>
<script language="JavaScript">
document.write(String('323')+String('323'));
</script>
</body>
</html>
 结果显示为:323323

 

(6)escape 和unescape函数

 

escapeunescape函数是将字符串进行编码和解码

 

注意,对于字母,数字,以及字符将返回它们本身.

 

示例1:

<html>
<head>
<title>test</title>
</head>
<body>
<script language="JavaScript">
document.write(escape('hello world!'));
</script>
</body>
</html>

 结果显示为:hello%20world%21

 

示例2:

<html>
<head>
<title>test</title>
</head>
<body>
<script language="JavaScript">
document.write(unescape('hello%20world%21'));
</script>
</body>
</html>

结果显示为:hello world!

 

完!

 

你可能感兴趣的:(JavaScript,html,浏览器)