1. Math对象的属性
Math对象用来进行属性运算,它与如下属性:
1)Math.E: 欧拉常数;
2)Math.LN2: 2的自然对数;
3)Math.LN2: 10的自然对数;
4)Math.LOG2E: 以2为底E的对数;
5)Math.LOG10E: 以10为底E的对数;
6)Math.PI: 圆周率;
7)Math.SQRT1_2: 0.5的平方根;
8)Math.SRRT2: 2的平方根。
2. Math对象的方法
1)abs(n): 绝对值;
2)acos(n):反余弦值(n为弧度);
3)asin(n): 反正弦值(n为弧度);
4)atan(n): 反正切值(n为弧度);
5)atan2(m, n): 极坐标m、n的角度;
6)ceil(n): 大于或等于n的整数;
7)cos(n): 余弦值(n为弧度);
8)exp(n): E的n次方;
9)floor(n): 小于或等于n的整数;
10)log(n):N的自然对数;
11)max(m,n):较大值;
12)min(m, n):较小值;
13)pow(m,n):m的n次方;
14)random():0~1之间的随机数;
15)round(n):n的四舍五入值;
16)sin(n):正弦值(n为弧度);
17)sqrt(n):平方根;
18)tan(n):正切值(n为弧度)。
使用举例:
<
script language
=
"
javascript
"
>
<!--
var
number1
=
4.3
;
document.write(number1
+
"
调用Math的ceil(n)方法后的值为:
"
+
Math.ceil(number1)
+
"
<br>
"
);
document.write(number1
+
"
调用Math的floor(n)方法后的值为:
"
+
Math.floor(number1)
+
"
<br>
"
);
var
number2
=
4
;
document.write(number2
+
"
的平方根为:
"
+
Math.sqrt(number2)
+
"
<br>
"
);
document.write(number1
+
"
和
"
+
number2
+
"
中较小的数字为:
"
+
Math.min(number1, number2)
+
"
, 较大的数为:
"
+
Math.max(number1, number2)
+
"
<br>
"
);
document.write(number1
+
"
的四舍五入值为:
"
+
Math.round(number1)
+
"
<br>
"
);
document.write(
"
随机生成的0~1之间的值:
"
+
Math.random()
+
"
<br>
"
);
document.write(
"
2的4次方为:
"
+
Math.pow(
2
,
4
));
//
-->
</
script
>
输出结果如下:
4.3调用Math的ceil(n)方法后的值为:5
4.3调用Math的floor(n)方法后的值为:4
4的平方根为:2
4.3和4中较小的数字为:4, 较大的数为:4.3
4.3的四舍五入值为:4
随机生成的0~1之间的值:0.2544149761504894
2的4次方为:16
1. 属性
1)NaN: not a number的缩写,当一个数值相关的函数或方法处理一个非数值型数据(或返回值)时,js返回NaN,parseInt()和parseFloat()方法时,如果进行转换的字符不是数值,也会返回NaN,可以使用isNaN()函数检测一个值是否是数值.
2. 方法
1)toExponential():该方法强制数值用指数符号显示,
2)toFixed(): 该方法将数值格式化为小数点后面指定的数值;
3)toPrecision(): 定义数值总共显示多少位数;
4)toString(): 返回当前数值的字符串值,如果初始值不是十进制数,默认将值转换为十进制数.
使用举例:
<
script language
=
"
javascript
"
>
<!--
var
num
=
34567
;
document.write(num
+
"
调用toExponential(3)后为:
"
+
num.toExponential(
3
)
+
"
<br>
"
);
document.write(num
+
"
调用toExponential(4)后为:
"
+
num.toExponential(
4
)
+
"
<br>
"
);
document.write(num
+
"
调用toExponential(5)后为:
"
+
num.toExponential(
5
)
+
"
<br>
"
);
document.write(num
+
"
调用toFixed(3)后为:
"
+
num.toFixed(
3
)
+
"
<br>
"
);
var
num1
=
4567.89
;
document.write(num1
+
"
精确1位为:
"
+
num1.toPrecision(
1
)
+
"
<br>
"
);
document.write(num1
+
"
精确2位为:
"
+
num1.toPrecision(
2
)
+
"
<br>
"
);
document.write(num1
+
"
精确3位为:
"
+
num1.toPrecision(
3
)
+
"
<br>
"
);
document.write(num1
+
"
精确4位为:
"
+
num1.toPrecision(
4
)
+
"
<br>
"
);
document.write(num1
+
"
转换为二进制为:
"
+
num1.toString(
2
)
+
"
<br>
"
);
document.write(num1
+
"
转换为八进制为:
"
+
num1.toString(
8
)
+
"
<br>
"
);
document.write(num1
+
"
转换为十六进制为:
"
+
num1.toString(
16
)
+
"
<br>
"
);
var
num2
=
0x0A
;
document.write(
"
十六进制数0x0A调用toString()后为:
"
+
num2.toString());
//
-->
</
script
>
输出结果如下:
34567调用toExponential(3)后为:3.457e+4
34567调用toExponential(4)后为:3.4567e+4
34567调用toExponential(5)后为:3.45670e+4
34567调用toFixed(3)后为:34567.000
4567.89精确1位为:5e+3
4567.89精确2位为:4.6e+3
4567.89精确3位为:4.57e+3
4567.89精确4位为:4568
4567.89转换为二进制为:1000111010111.1110001111010111000010100011110101110001
4567.89转换为八进制为:10727.70753412172704
4567.89转换为十六进制为:11d7.e3d70a3d71
十六进制数0x0A调用toString()后为:10
Boolean对象
1 属性
该对象有constructor和prototype,其中constructor属性表示创建该对象的构造函数,而prototype属性表示其对象原型.
2 方法
1) toString(): 该方法返回布尔值的文本形式;
2) valueOf(): 返回对象的基本布尔值.
<
script language
=
"
javascript
"
>
<!--
var
booleanObj
=
new
Boolean(
true
);
document.write(booleanObj.toString()
+
"
<br>
"
);
document.write(booleanObj.valueOf()
+
"
<br>
"
);
document.write(booleanObj);
//
-->
</
script
>
输出结果如下:
true
true
true
让我们再来看一段有意思的代码:
<
script language
=
"
javascript
"
>
<!--
var
booleanObj1
=
new
Boolean(
false
);
var
booleanObj2
=
new
Boolean(booleanObj1);
document.write(
"
The booleanObj2 value is
"
+
booleanObj2);
//
-->
</
script
>
结果有点出乎我的意料,输出结果为: The booleanObj2 value is true.
原来
声明一个Boolean对象时,如果我们用一个值为false的Boolean对象对其进行初始化,则新的Boolean对象的值为true.