建立: 2019/03/03html
遷入/完成: 從【JavaScript 式與運算符】遷入Math相關, 數值類型轉換相關dom
優化格式,刪除浮點數與偏差優化
數值運算 |
算數運算符 |
所有做爲64位浮點數進行運算(其餘語言的double) 運算前所有轉換爲double,不能轉換的結果爲NaN
二項運算符 |
+, =, *, /, % |
整數之間的除法結果也是浮點數! |
7/2 // 3.5 |
%結果也是浮點數 |
a%b 符號與a相同 a-bk的絕對值最想的數 |
沒法計算的話是NaN |
|
true做爲1,false做爲0 |
|
0/0 //NaN |
|
單項運算符 |
++,-- |
累加累減 |
+ |
不作任何處理 |
- |
改變符號 |
前置的先運算在評價式子 |
let a = 1; let b = ++a +1; // a = 2, b = 3 |
後置的先評價式子後運算 |
let a = 1; let b = a++ + 1;//a = 2, b = 2 |
|
|
|
|
|
代入運算符 |
=, +=, -=, *=, /=, %= |
|
|
|
|
|
|
|
|
|
|
Math |
屬性 |
e(天然對數的底) |
Math.E |
ln2 |
Math.LN2 |
ln10 |
Math.LN10 |
log e 2 |
Math.LOG2E |
lge log e 10 |
Math.LOG10E |
π(圓周率) |
Math.PI |
0.5的平方根 |
Math.SQRT1_2 |
2的平方根 |
Math.SQRT2 |
|
|
|
|
|
方法 |
絕對值 |
Math.abs(x) |
arccos(x) *arc是指弧度,也就是cos值對應的弧度的意思 |
Math.acos(x) |
arccosh(x) |
Math.acosh(x) |
arcsin(x) |
Math.asin(x) |
arcsinh(x) |
Math.asinh(x) |
arctan(x) |
Math.atan(x9 |
arctan2(y,x) y/x的acrtan |
Math.atan2(y,x) |
arctanh(x) |
Math.atanh(x) |
立方根 |
Math.cbrt(x) |
x以上的最小整數(包含自身) |
Math.ceil(x) 注意: Math.ceil(5) // 5 |
x轉爲32位無符號整數時開頭0的數量 |
Math.clz32(x) |
cos(x) |
Math.cos(x) |
cosh(x) |
Math.cosh(x) |
e的x次方 |
Math.exp(x) |
e的x次方 -1 |
Math.expm1(x) |
x如下的最大整數 |
Math.floor(x) |
最接近x的單精度浮點數(float) |
Math.fround(x) |
平方的和的根 |
Math.hypot(x1, x2, ...) |
a,b的32位整數乘法 就是運算比較快的乘法 |
Math.imul(a, b) |
log x e |
Math.log(x) |
log x 2 |
Math.log2(x) |
log x 10 |
Math.log10(x) |
log (x+1) e |
Math.log1p(x) |
最大值 |
Math.max(x1, x2, ...) |
最小值 |
Math.min(x1, x2, ...) |
x的p次方 |
Math.pow(x, p) |
0到1之間的隨機數 以當前時間爲種子 |
Math.random() |
x的四捨五入 |
Math.round(x) |
獲取x的符號 + =》1 0 =》 0 - =》-1 |
Math.sign(x) |
sin(x) |
Math.sin(x) |
sinh(x) |
Math.sinh(x) |
平方根 |
Math.sqrt(x) |
tan(x) |
Math.tan(x) |
去掉小數部分 |
Math.trunc(x) |
|
|
|
|
|
|
|
|
|
類型轉換 |
直接和字符串用+接字符串 |
例: "abc" + 1//"abc1" 1 + "abc"//"1abc" |
Number的方法 |
轉換成字符 |
toString() 能夠帶參數(2~32),表示表達的進制 |
|
toLocaleString(n) |
指定小數點下位數 |
toFixed(n) 指定小數點如下的位數 |
指數表示 |
toExponential(n) n表示小數點下位數 |
有效位數表示 |
toPrecision(n) n指定有效位數 有效位數小於整數位數,科學計數法表示 |
|
|