js所有數(shù)值都用浮點(diǎn)數(shù)來表示
十六進(jìn)制數(shù)字以0x或者0X為前綴,由0-9,a-f(大小寫均可)之間字符構(gòu)成,a-f對(duì)應(yīng)的數(shù)值是10-15
八進(jìn)制數(shù)字以數(shù)字0開始,其后跟隨0-7之間的數(shù)字,嚴(yán)格來說,js是禁止8進(jìn)制的直接量的
浮點(diǎn)數(shù)可以用指數(shù)計(jì)數(shù)法來標(biāo)識(shí),
比如6.02e23表示6.02*1023
1.4738223e-23表示1.4738223*10-23
js的數(shù)學(xué)運(yùn)算符包含+(加法),-(減法),*(乘法),/(除法),%(求余:求整數(shù)除后的余數(shù))等
更加復(fù)雜的數(shù)學(xué)運(yùn)算作為Math對(duì)象的屬性定義的函數(shù)和常量來表示
Math.pow(2,53) 2的53次冪
Math.round(.6) 四舍五入為1
Math.ceil(.6) 向上求整為1
Math.floor(.6) 向下求整為0
Math.abs(-5) 求絕對(duì)值
Math.max(x,y,z) 返回最大值
Math.min(x,y,z) 返回最小值
Math.random() 生成一個(gè)大于等于0小于1的偽隨機(jī)數(shù)
Math.PI π,圓周率
Math.E 自然對(duì)數(shù)的底數(shù)
Math.sqrt(3) 3的平方根
Math.pow(3,1/3) 3的立方根
Math.sig(0) 三角函數(shù),還有Math.cos,Math.atan
Math.log(10) 10的自然對(duì)數(shù)
Math.log(100)/Math.LN10 以10為底100的對(duì)數(shù)
Math.exp(3) e的3次冪
js預(yù)定義了全局變量 Infinity 和 NaN ,用來表示正無窮大和非數(shù)字值
NaN有個(gè)特點(diǎn)就是他和任何值都不相等,包括自身
二進(jìn)制浮點(diǎn)數(shù)編程有個(gè)問題,就是數(shù)值相等的比較
例如
var x=.3-.2;
var y=.2-.1;
x==y
返回值是false,也就是不相等
所以要盡量避免小數(shù)運(yùn)算,例如金額可以使用整數(shù)分來運(yùn)算,而不是使用小數(shù)元來運(yùn)算
浙公網(wǎng)安備 33010602011771號(hào)