iT邦幫忙

2024 iThome 鐵人賽

DAY 28
1
Modern Web

如何詠唱JavaScript的Math咒語系列 第 28

[Day28]-他們就靜靜的躺在那。Math的靜態屬性

  • 分享至 

  • xImage
  •  

不知不覺已經來到第28天了呢!大部分的函式都已經簡單介紹過了,不管是他們的數學意義還是使用方式

其中有一些在數學上很常用的數,雖然還是透過某些數學方法計算出來的,但由於太常用到了,所以JS將他們直接設成了靜態屬性,讓我們一起來認識一下他們吧!

數學課

回想我自己在小學時期,圓面積的公式會背:半徑*半徑*3.14,小時候就覺得π就是3.14,當然大家都知道π會是一個無窮不循環小數,那為什麼小學要把他當作3.14來算呢?

對小學生來說,算圓面積時算出一個大概的數,在認知上是比較清楚的,他們可以知道面積大概多大,好去跟其他長方形三角形面積做比較;算出圓周長也可以知道實際大概多長。

那因為在圓的章節太常用到π來計算,所以老師乾脆直接設定就是3.14啦!

到了國中,根號2跟根號3,老師一樣叫我們背他們分別是1.4141.732,其實也是因為很常用到所以背起來就能做大概的計算了!

又到了高中,學習到了對數的概念,課本後面一樣有了密密麻麻的「對數表」XDD也是為了讓你在遇到對數時可以去翻找,就不用自己算了!查表法就是這麼一回事~

說這麼多我們回到正題吧!

Math Static Proterty

所以在數學上很多數很頻繁地被使用,而這些數本身也是需要透過一些計算來得到。

所以JS將他們設成靜態屬性,在調用時就不用再另外做計算,這樣大量使用時就能減少許多運算成本啦!

也就是說,這些靜態屬性可以視作JS自己的查表法?

關於這個說法歡迎留言一起討論~

一起來看看有哪些吧!

Math的靜態屬性 意義
Math.E 歐拉常數 近似於2.718
Math.LN10 10的自然對數 近似於2.302
Math.LN2 2的自然對數 近似於0.693
Math.LOG10E 10為底e的對數 近似於0.434
Math.LOG2E 2為底e的對數 近似於1.442
Math.PI 圓周率,圓周長與直徑的比例 近似於3.14159
Math.SQRT1_2 1/2的平方根 近似於0.707
Math.SQRT2 根號2 近似於1.414

跟歐拉常數有關:

  • Math.E:第一個歐拉常數昨天跟大家介紹過了!就不再多做介紹。
  • Math.LN10:也就是以Math.E為底10的對數。
  • Math.LN2:以Math.E為底2的對數。
  • Math.LOG10E:以10為底Math.E的對數。
  • Math.LOG2E:以2為底Math.E的對數。

其他好像不解釋大家也都很清楚XDD

而關於他們的規範,其實都跟昨天介紹的Math.E內容大同小異,有興趣可以自行去翻找,大概就是一些屬性描述器的設定~
image
我沒了。
參考資料
MDN-Math.E
MDN-Math.LN10
MDN-Math.LN2
MDN-Math.LOG10E
MDN-Math.LOG2E
MDN-Math.PI
MDN-Math.SQRT1_2
MDN-Math.SQRT2
ECMAScript-Math.LN10


上一篇
[Day27]-歐拉歐拉歐拉歐拉!!!Math.E
下一篇
[Day29]-這鍋子不知道在嗨什麼。Math.hypot()
系列文
如何詠唱JavaScript的Math咒語30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言