<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript" src="mytool.js"></script>
<script type="text/javascript">
/*
Global 对象
是一个固有对象,目的是把所有全局方法集中在一个对象中。
直接调用其方法,不需要创建对象 。
parseInt(numString, [radix])
parseFloat(numString)
eval(codeString)
isNaN(numValue)
*/
//parseInt(numString, [radix]) 将字符串按指定格式进行转换
parseInt("110",2).show(); //按2进制解析"110"并转为10进制数
parseInt("0x3C",16).show();//按16进制解析"0x3c"并转为10进制数
parseInt("abc").show();//NaN
parseInt("12abc").show();//12
parseFloat("1.001").show();//1.001
parseFloat("1.00").show();//1
parseFloat("3.75").show();//3.75
parseFloat("a.bc1").show();//NaN
//10进制转换为其它进制---需要使用到Number对象的toString(radix)方法
//numObj = new Number(value)
//objectname.toString([radix]) 指定将数字值转换为字符串时的进制。
var num = new Number(6);
num.toString(2).show();//110 转为2进制
//判断一个数是否为NaN
//第一种方法 : isNaN()
//isNaN(numValue) 返回一个 Boolean 值,指明提供的值是否是保留值 NaN (不是数字)。
//如果值是 NaN, 那么 isNaN 函数返回 true ,否则返回 false
//使用这个函数的典型情况是检查 parseInt 和 parseFloat 方法的返回值。
var x = parseFloat("ab.23");
var flag = isNaN(x);
if(flag) {
'parseFloat("ab.23")返回的结果是NaN'.show();
}
//第二种方法
//变量可以与它自身进行比较。 如果比较的结果不等,那么它就是 NaN 。
//这是因为 NaN 是唯一与自身不等的值。
var y = parseFloat("!2#.23");
if(y!=y) {
'parseFloat("!2#.23")返回的结果是NaN'.show();
}
//eval(codeString) codestring 参数是包含有效 JScript 代码的字符串值,这个字符串将由 JScript 分析器进行分析和执行
//不同情况下可以传入不同的字符串进行解析,可以实现很灵活的功能
//简单计算器 :
//页面中可以获取不同选择的运算符,再传递给eval(),只要 一个字符串就能实现四则运算的功能
function calc(x,oper,y) {
return eval(x+oper+y);
}
calc(1,"+",2).show();//3
calc(1,"-",2).show();//-1
calc(1,"*",2).show();//2
calc(1,"/",2).show();//0,5
</script>
</head>
<body>
</body>
</html>