Math
åºçº¿
广æ³å¯ç¨
*
èª 2015å¹´7æ èµ·ï¼æ¤ç¹æ§å·²å¨ä¸»æµæµè§å¨ä¸å¾å°æ¯æï¼å¯å¨å¤§å¤æ°è®¾å¤åæµè§å¨çæ¬ä¸æ£å¸¸ä½¿ç¨ã
* æ¤ç¹æ§çæäºé¨åçæ¯æç¨åº¦å¯è½ææä¸åã
Math å½å空é´å¯¹è±¡å
å«ç¨äºæ°å¦å¸¸éå彿°çéæå±æ§ä¸æ¹æ³ã
æè¿°
ä¸å
¶ä»å
¨å±å¯¹è±¡ä¸åçæ¯ï¼Math 䏿¯æé 彿°ï¼ä¸å¯ä»¥ä¸ new è¿ç®ç¬¦ä¸èµ·ä½¿ç¨ï¼ä¹ä¸å¯ä»¥å° Math 对象ä½ä¸ºå½æ°è°ç¨ãMath çææå±æ§ä¸æ¹æ³é½æ¯éæçã
夿³¨ï¼Math ç许å¤å½æ°ç精度æ¯åå³äºå
·ä½å®ç°çã
è¿æå³çä¸åæµè§å¨å¯è½ä¼ç»åºä¸åçç»æãå³ä½¿æ¯å䏿¬¾ JavaScript 弿ï¼å¨ä¸åçæä½ç³»ç»ææ¶æä¸è¿è¡æ¶ï¼ä¹å¯è½äº§çä¸åçç»æï¼
éæå±æ§
Math.E-
æ¬§ææ°ï¼å³èªç¶å¯¹æ°çåºæ°ï¼çº¦çäº
2.718ã Math.LN10-
10çèªç¶å¯¹æ°ï¼çº¦çäº2.303ã Math.LN2-
2çèªç¶å¯¹æ°ï¼çº¦çäº0.693ã Math.LOG10E-
以 10 为åºç
Eç对æ°ï¼çº¦çäº0.434ã Math.LOG2E-
以 2 为åºç
Eç对æ°ï¼çº¦çäº1.443ã Math.PI-
ä¸ä¸ªåçå¨é¿åç´å¾ä¹æ¯ï¼çº¦çäº
3.14159ã Math.SQRT1_2-
½ï¼äºåä¹ä¸ï¼çå¹³æ¹æ ¹ï¼çº¦çäº
0.707ã Math.SQRT2-
2çå¹³æ¹æ ¹ï¼çº¦çäº1.414ã Math[Symbol.toStringTag]-
[Symbol.toStringTag]屿§çåå§å¼ä¸ºå符串"Math"ãè¯¥å±æ§ä½¿ç¨äºObject.prototype.toString()ã
éææ¹æ³
Math.abs()-
è¿åä¸ä¸ªæ°çç»å¯¹å¼ã
Math.acos()-
è¿åä¸ä¸ªæ°çåä½å¼¦å¼ã
Math.acosh()-
è¿åä¸ä¸ªæ°çååæ²ä½å¼¦å¼ã
Math.asin()-
è¿åä¸ä¸ªæ°ç忣弦å¼ã
Math.asinh()-
è¿åä¸ä¸ªæ°çååæ²æ£å¼¦å¼ã
Math.atan()-
è¿åä¸ä¸ªæ°ç忣åå¼ã
Math.atan2()-
è¿åå ¶ä¸¤ä¸ªåæ°ä¹åç忣åå¼ã
Math.atanh()-
è¿åä¸ä¸ªæ°çååæ²æ£åå¼ã
Math.cbrt()-
è¿åä¸ä¸ªæ°çç«æ¹æ ¹ã
Math.ceil()-
è¿å大äºçäºä¸ä¸ªæ°çæå°æ´æ°ã
Math.clz32()-
è¿åä¸ä¸ª 32 使´æ°çå导é¶çæ°éã
Math.cos()-
è¿åä¸ä¸ªæ°çä½å¼¦å¼ã
Math.cosh()-
è¿åä¸ä¸ªæ°çåæ²ä½å¼¦å¼ã
Math.exp()-
è¿å exï¼å ¶ä¸
xä¸ºåæ°ï¼eæ¯æ¬§æå¸¸æ°ï¼2.718...ï¼èªç¶å¯¹æ°çåºæ°ï¼ã Math.expm1()-
è¿å
exp(x) - 1çå¼ã Math.floor()-
è¿åå°äºçäºä¸ä¸ªæ°çæå¤§æ´æ°ã
Math.f16round()-
è¿åææ¥è¿ä¸ä¸ªæ°çå精度浮ç¹å表示ã
Math.fround()-
è¿åææ¥è¿ä¸ä¸ªæ°çå精度浮ç¹å表示ã
Math.hypot()-
è¿åå ¶ææåæ°å¹³æ¹åçå¹³æ¹æ ¹ã
Math.imul()-
è¿å 32 使´æ°ä¹æ³çç»æã
Math.log()-
è¿åä¸ä¸ªæ°çèªç¶å¯¹æ°ï¼ãeï¼å³ ãï¼ã
Math.log10()-
è¿åä¸ä¸ªæ°ä»¥ 10 ä¸ºåºæ°ç对æ°ã
Math.log1p()-
è¿å
1 + xçåçxçèªç¶å¯¹æ°ï¼ãeï¼å³ ãï¼ã Math.log2()}-
è¿åä¸ä¸ªæ°ä»¥ 2 ä¸ºåºæ°ç对æ°ã
Math.max()-
è¿åé¶å°å¤ä¸ªæ°å¼ä¸æå¤§å¼ã
Math.min()-
è¿åé¶å°å¤ä¸ªæ°å¼ä¸æå°å¼ã
Math.pow()-
è¿å
xç y 次å¹ï¼ä¹å°±æ¯xyï¼ã Math.random()-
è¿åä¸ä¸ª
0å°1ä¹é´çä¼ªéæºæ°ã Math.round()-
è¿ååèäºå ¥åçæ´æ°ã
Math.sign()-
è¿åä¸ä¸ªæ°ç符å·ï¼è¡¨ç¤ºå®æ¯æ£æ°ãè´æ°è¿æ¯ 0ã
Math.sin()-
è¿åä¸ä¸ªæ°çæ£å¼¦å¼ã
Math.sinh()-
è¿åä¸ä¸ªæ°çåæ²æ£å¼¦å¼ã
Math.sqrt()-
è¿åä¸ä¸ªæ°çå¹³æ¹æ ¹ã
Math.sumPrecise()-
è¿åä¼ å ¥çå¯è¿ä»£æ°åéåçåï¼åæ¶é¿å ä¸é´ç»æåºç°æµ®ç¹ç²¾åº¦æå¤±ã
Math.tan()-
è¿åä¸ä¸ªæ°çæ£åå¼ã
Math.tanh()-
è¿åä¸ä¸ªæ°çåæ²æ£åå¼ã
Math.trunc()-
è¿åä¸ä¸ªæ°çæ´æ°é¨åï¼ç´æ¥å»é¤å ¶å°æ°ç¹åä¹åçé¨åã
示ä¾
>å¨è§åº¦ä¸å¼§åº¦ä¹é´è½¬æ¢
ä¸è§å½æ° sin()ãcos()ãtan()ãasin()ãacos()ãatan() å atan2() ææï¼å¹¶è¿åï¼ä»¥å¼§åº¦ä¸ºåä½çè§ã
ç±äºäººä»¬ä¹ æ¯ä»¥è§åº¦ä¸ºåä½è¿è¡æèï¼ä¸æäºå½æ°ï¼å¦ CSS 忢ï¼å¯ä»¥æ¥åè§åº¦ä¸ºåä½ï¼å æ¤åå¤ä¸äºç¨äºå¨ä¸¤ç§åä½ä¹é´è¿è¡è½¬æ¢ç彿°æ¯ä¸ªå¥½ä¸»æï¼
function degToRad(degrees) {
return degrees * (Math.PI / 180);
}
function radToDeg(rad) {
return rad / (Math.PI / 180);
}
计ç®çè¾¹ä¸è§å½¢çé«
妿æä»¬è¦è®¡ç®çè¾¹ä¸è§å½¢çé«ï¼ä¸å·²ç¥å ¶è¾¹é¿ä¸º 100ï¼æä»¬å¯ä»¥ä½¿ç¨å ¬å¼ï¼é»è¾¹çé¿åº¦ä¹ä»¥è¯¥è§çæ£åçäºå¯¹è¾¹çé¿åº¦ã

å¨ JavaScript ä¸ï¼æä»¬å¯ä»¥è¿æ ·å®ç°ï¼
50 * Math.tan(degToRad(60));
æä»¬ä½¿ç¨ degToRad() 彿°å° 60 度转æ¢ä¸ºå¼§åº¦ï¼å 为 Math.tan() ææè¾å
¥å¼ä»¥å¼§åº¦ä¸ºåä½ã
è¿å两端ä¹é´çéæºæ´æ°
å¯ä»¥ä½¿ç¨ Math.random() å Math.floor() ç»åå®ç°ï¼
function random(min, max) {
const num = Math.floor(Math.random() * (max - min + 1)) + min;
return num;
}
random(1, 10);
è§è
| è§è |
|---|
| ECMAScript® 2027 Language Specification> # sec-math-object> |