系统函数
1.引入
我们知道函数是可以实现特定功能的代码块,JavaScript为了简化开发,特意定义了部分的常用函数供开发人员使用,这一些函数就是JavaScript的系统函数。(说白了就是别人写好的函数,供我们去使用就可以了)。
2.系统函数分类
常用的系统函数有:parseXxx()函数、isNaN()函数、eval()函数、Number()函数、String()函数等。下面我们将逐一介绍这几个函数的使用。
3.parseXxx()函数
(1).概述
parseXxx()函数一般有parseInt()、parseFloat()等,其作用是将字符串转化为指定的数据类型。它从字符串的开头开始解析,在第一个非整数的位置停止解析并返回前面所读取到的数据。如果说字符串开头就不是数字开头的,那么这一个时候将返回类型:NaN,表示它不是一个数字。
(2).parseXxx()函数使用举例以及效果截图
parseXxx()函数语法:
parseXxx(value);
<script type="text/javascript">
/**parseXxx()函数使用举例**/
var str1 = "HelloWorld1.23";
var str2 = "1.23HelloWorld";
var str3 = "4.56"
//进行整数的解析转化输出
document.write(str1 + "解析为整数是:" + parseInt(str1) + "<br>");
document.write(str2 + "解析为整数是:" + parseInt(str2) + "<br>");
document.write(str3 + "解析为整数是:" + parseInt(str3) + "<br>");
document.write("-----------------------------------"+ "<br>");
//进行小数的解析输出
document.write(str1 + "解析为整数是:" + parseFloat(str1) + "<br>");
document.write(str2 + "解析为整数是:" + parseFloat(str2) + "<br>");
document.write(str3 + "解析为整数是:" + parseFloat(str3) + "<br>");
</script>
4.Number()函数
(1).概述
Number() 函数把对象的值转换为数字。如果说这一个对象无法转化为数字,那么这一个时候Number()函数就会返回NaN。
(2).Number()函数语法、使用实例、效果截图
<script type="text/javascript">
/**Number()函数使用举例**/
var obj1 = "1.23";
var obj2 = "1.23,4.56,7.89";
var obj3 = "";
var obj4 = null;
var obj5 = true;
var obj6 = false;
var obj7 = "0xabd";
var obj8 = "2.5e+7";
//数组
var arr = ["1.2"];
var arr2 = ["1.2","1.3"]
//使用Number()函数解析
document.write("解析的结果是:" + Number(obj1) + "<br>");
document.write("解析的结果是:" + Number(obj2) + "<br>");
document.write("解析的结果是:" + Number(obj3) + "<br>");
document.write("解析的结果是:" + Number(obj4) + "<br>");
document.write("解析的结果是:" + Number(obj5) + "<br>");
document.write("解析的结果是:" + Number(obj6) + "<br>");
document.write("解析的结果是:" + Number(obj7) + "<br>");
document.write("解析的结果是:" + Number(obj8) + "<br>");
document.write("解析的结果是:" + Number(arr) + "<br>");
document.write("解析的结果是:" + Number(arr2) + "<br>");
</script>
5.isNaN()函数
(1).概述
isNaN() 函数用于检查其参数是否是非数字值。如果参数值为 NaN 或字符串、对象、undefined等非数字值则返回 true, 否则返回 false。实际上,它是判断一个值能否被 Number() 合法地转化成数字。
(2).使用详解
①: 数字形式的字符串的解析,如"1.23"、"4.5"等可以被解析为数字,返回值为false,但是类似于"1.2.3"、"4.5、5.6"这种类型的数据无法被解析,如下所示
<script type="text/javascript">
/**isNaN()函数使用举例**/
var obj1 = "1.23";
var obj2 = "1.23,4.56,7.89";
//使用isNaN()函数解析
document.write(obj1 + "解析的结果是:--Number()结果:" + Number(obj1) +"--isNaN()结果:" + isNaN(obj1)+ "<br>");
document.write(obj2 + "解析的结果是:--Number()结果:" + Number(obj2) +"--isNaN()结果:" + isNaN(obj2)+ "<br>");
</script>
②.空值:null,如空的字符串"",空的数组等被解析的时候都会被转变为0,于是isNaN会被认为是数字,所有IsNaN解析的结果是false。
<script type="text/javascript">
var obj1 = "";
var obj2 = [];
var obj3 = null;
//使用isNaN()函数解析
document.write(obj1 + "解析的结果是:--Number()结果:" + Number(obj1) +"--isNaN()结果:" + isNaN(obj1)+ "<br>");
document.write(obj2 + "解析的结果是:--Number()结果:" + Number(obj2) +"--isNaN()结果:" + isNaN(obj2)+ "<br>");
document.write(obj3 + "解析的结果是:--Number()结果:" + Number(obj3) +"--isNaN()结果:" + isNaN(obj3)+ "<br>");
</script>
③.布尔类型的值,Number(true)=1,Number(false)=0,所以isNaN对布尔值也返回false。
<script type="text/javascript">
var obj1 = true;
var obj2 = false;
//使用isNaN()函数解析
document.write(obj1 + "解析的结果是:--Number()结果:" + Number(obj1) +"--isNaN()结果:" + isNaN(obj1)+ "<br>");
document.write(obj2 + "解析的结果是:--Number()结果:" + Number(obj2) +"--isNaN()结果:" + isNaN(obj2)+ "<br>");
</script>
④.取决于个数的数组,如果是数组只有一个元素,那么这一个时候Number()可以被解析为数字,即结果是false,但是如果存在多个数字,那么这一个时候无法解析,则是true
<script type="text/javascript">
var obj1 = ["1.5"];
var obj2 = ["1.5","2.5"];
//使用isNaN()函数解析
document.write(obj1 + "解析的结果是:--Number()结果:" + Number(obj1) +"--isNaN()结果:" + isNaN(obj1)+ "<br>");
document.write(obj2 + "解析的结果是:--Number()结果:" + Number(obj2) +"--isNaN()结果:" + isNaN(obj2)+ "<br>");
</script>
⑤.特殊形式的数字,如:科学计数法和不同机制的数据在解析的时候也会被解析成数字,如下所示:
<script type="text/javascript">
var obj1 = "2e+7";
var obj2 = "0xabc";
//使用isNaN()函数解析
document.write(obj1 + "解析的结果是:--Number()结果:" + Number(obj1) +"--isNaN()结果:" + isNaN(obj1)+ "<br>");
document.write(obj2 + "解析的结果是:--Number()结果:" + Number(obj2) +"--isNaN()结果:" + isNaN(obj2)+ "<br>");
</script>
6.eval()函数
(1).概述
eval() 函数计算 JavaScript 字符串,并把它作为脚本代码来执行。如果参数是一个表达式,eval() 函数将执行表达式。如果参数是Javascript语句,eval()将执行 Javascript 语句。
(2).eval()函数的基本使用以及相关效果截图
<script type="text/javascript">
var x = 10;
var str = "2+2";
var str1 = "x + 7";
document.write("eval()函数的使用测试:" + eval(str) + "<br>");
document.write("eval()函数的使用测试:" + eval(str1) + "<br>");
</script>
7.string()函数
string()函数我们将在字符串专题讲解。