前幾天我們認識了函數、反函數還有arcsin、arccos兩個反三角函數,最後要介紹的就是我們的阿天卷arctan!
「寐偲,阿天卷!!!」
讓我們開始吧!
跟前兩天講的arcsin、arccos一樣,arctan函數就是tan函數的反函數,前面的章節提到過tan,給他一個角度,他就會回傳他所對應的直角三角形的對邊 / 鄰邊,也可以理解為他的斜率,那他的反函數arctan就會是給他一個斜率,然後他回傳一個對應的角度,一樣因為回傳的只會有一個值,所以範圍會限制在-π/2~π/2(含)之間。
tan中好觀察的點(因為回傳只會落在-π/2~π/2之間,所以這邊都代這個範圍的角度進去):
tan0° = 0
tan45°(tanπ/2) = 1
tan-45°(tan-π/4) = -1
所以將上面的結果放進arctan:
arctan0 = 0
arctan1 = π/4
arctan(-1) = -π/4
看看他的圖形吧!y = arctanx:
暖身完了!來看看他怎麼用吧~
了解arctan之後,Math.atan()也差不多就這樣。
--MDN
也就是說Math.atan()就是Math.tan()的反函數!
Math.atan(x)
傳入一個數字。
他將回傳x的反正切值(範圍會落在-π/2~π/2(含)之間)。
如果x是Infinity,回傳π/2。
如果x是-Infinity,回傳-π/2。

這個函式會回傳x的反正切值,這個值會以角度表示且會介於-π/2~π/2(含)之間。
呼叫時執行以下步驟:
n,值會是ToNumber(x)的結果。n是NaN、+0或-0,回傳n。n是正無限大,回傳一個π/2的近似值。n是負無限大,回傳一個-π/2的近似值。n的反正切值近似值。如同我們圖形看到的,傳入的值在趨近於無限大跟負無限大時分別會收斂到π/2跟-π/2。
直接來用用看吧!
console.log(Math.atan(1) * 180 / Math.PI); //45
console.log(Math.atan(-1) * 180 / Math.PI); //-45
console.log(Math.atan(0) * 180 / Math.PI); //0
console.log(Math.atan(Math.sqrt(3)) * 180 / Math.PI); //59.99999999999999
放入√3想得到60°,但還是會有一點點誤差,一定要注意喔!
今天就輕鬆一點吧!
當我們知道斜率要怎麼知道他所對應的角度呢?
寐偲,啊天卷!!
各位明天見。
參考資料:
MDN-Math.atan()
ECMAScript-Math.atan()