JavaScript用Math.asin()求反正弦值

2021-01-09 青石野草

1. 基本概念

Math.asin()方法用於求一個數的反正弦值。它的語法形式如下所示:

Math.asin(x);

其中參數x應該是一個數字,即它的類型應該是Number。如果x不是Number類型的,那麼它會先被強制類型轉換為Number類型。

參數x代表的是某個角的正弦值,而Math.asin()方法返回的正是用弧度值表示的這個角。x應該處於 [-1, 1] 範圍內,因為正弦值的取值範圍是 [-1, 1]。

Math.asin()方法的返回值由下面的規則決定,規則中x的值指的是x被轉換為Number類型後的值,如果它原本不是Number類型的話。

1. 如果x是NaN,那麼結果是NaN;

2. 如果x大於1(包括正無窮Infinity),那麼結果是NaN;

3. 如果x小於-1(包括負無窮-Infinity),那麼結果是NaN;

4. 如果x是+0,那麼結果是+0;

5. 如果x是-0,那麼結果是-0;

6. x為其它 [-1, 1] 範圍內的數字,結果是正弦值等於x的角的弧度值。

我們知道正弦函數是一個周期函數,即有多個角的正弦值是相同的。那麼當我們指定一個正弦值的時候,Math.asin()方法會返回哪一個角呢?對此官方文檔作了明確的規定,那就是Math.asin()方法返回的是 [-π / 2, π / 2] 範圍內的角。

2. 示例

2.1 參數為[-1, 1]內的數字

因為Math.asin()方法的參數的合法範圍是 [-1, 1] ,所以我們先來看看參數正確的情況下Math.asin()方法的作用。雖然+0和-0也是這一範圍內的數字,但這裡我們先不考慮它們,而是把它們留到第3個例子中。本示例的執行結果如圖1所示。

圖1 參數在[-1, 1]內的情況

2.2 參數為[-1, 1]外的數字

我們再來看看參數在 [-1, 1] 範圍之外時,Math.asin()的返回值。同樣的,這裡我們先不考慮正無窮和負無窮(Infinity和-Infinity)而是將它們留到示例3中進行展示。下面代碼的執行結果如圖2所示。

圖2 參數在[-1, 1]外的情況

2.3 參數為特殊數字

JavaScript中有幾個特殊的數字,它們分別是+0、-0、Infinity、-Infinity和NaN。本示例演示的就是以這些特殊數字為參數而調用Math.asin()方法的效果,它們的執行結果如圖3所示。

注意在該示例中,我們用單獨的一條列印語句來列印參數為-0的結果。這是因為如果用同一條列印語句來同時列印提示字符串和結果值,那麼結果值-0在轉換成字符串後就變成了0(+0),列印出的信息會錯誤地顯示-0的反正弦值為0(+0)。

同樣的,我們也用單獨的一條列印語句來列印參數為+0的結果。這是為了說明Math.asin(+0)的結果確實為+0(0),而不是-0轉換為字符串而得來的。

圖3 參數為特殊數字的情況

2.4 參數不為數字

最後,我們再來看看Math.asin()的參數不是Number類型的情形。此時參數會先被轉換為Number類型,再對該數字求反正弦值,該示例的執行結果如圖4所示。

在該示例中,我們同樣單獨的列印參數為null的結果。這麼做的原因也是為了說明Math.asin(null)的結果確實是+0(0),而不是-0轉換為字符串而得來的。

圖4 參數不是數字的情況

(完)

相關焦點

  • JavaScript用Math.sin()求正弦值
    基本概念Math.sin()方法的作用是用來求一個角的正弦值。它的語法結構如下所示:Math.sin(x);參數x代表的是要計算正弦值的角的弧度值,而不是角度值。x應該是一個數字,即它的類型應該是Number。
  • JavaScript - Math對象
    中其實是有很多數學計算的需求的,不過不必擔心系統給我們提供了大量的數學運算的方法供我們使用而這些方法全都存在於我們的Math對象中Math常用的屬性:Math.PI 相當於π 3.14159Math對象常用的函數:1.Math.round() 四捨五入舉個小例子:<script type = 「text/javascript
  • Python的武器庫02:math模塊
    任何程式語言都要有數學問題功能,python提供了math模塊來解決數學問題。math模塊中有很多對實數(浮點數)的數學函數。由於math模塊是python自帶的模塊,不需要進行安裝,使用時先輸入語句"from math import *",就可以使用math模塊中的數學函數。
  • JavaScript參考文檔之Math(數學對象)
    Math是一個對象,定義了引用有用的算術函數和常量的屬性。Math對象對這些函數 和常量進行了分組,使用語法如Math.sin(x); Math.PI。Math.acos( ) -----------> 計算反餘弦值。Math.asin( ) -----------> 計算反正弦值。
  • ​【Python入門】Python數學math模塊55個函數詳解
    >描述:以弧度為單位返回 x 的反正弦值。語法:math.asin(x)math.asin(.5)0.5235987755982989 atan()>描述:返回 x 弧度的正弦值。>描述:返回 x 的反雙曲正切值。
  • 學會 Math 對象這 10 個方法,能讓你事半功倍!
    簡介JavaScript中的math 對讓我們能夠對執行一些數學操作
  • Python模塊學習 ---- math模塊
    使用 math 模塊 math 模塊是標準庫中的,所以不用安裝,可以直接使用。使用方法是:>>> import math用 import 就將 math 模塊引用過來了,下面就可以使用這個模塊提供的工具了。
  • JavaScript用Math.sqrt()求平方根
    因此,Math.sqrt()方法的作用就是用來求一個數的平方根。它的語法結構如下所示:Math.sqrt(x);參數x應該是一個數字,即它的類型應該是Number。如果x不是Number類型的,那麼它會先被強制類型轉換為Number類型。在數學上要計算一個數的平方根,那麼這個數就不能為負數。
  • NX之math函數
    本文基於NX10版本,詳細闡述NX中所有math函數(共26個)的含義與應用,掌握math函數是實現參數化建模的必要工具。
  • JavaScript用Math.cos()求餘弦值
    基本概念Math.cos()方法用於求一個角的餘弦值。它的語法形式如下所示:Math.cos(x);參數x代表的是要計算餘弦值的角的弧度值,而不是角度值。x應該是一個數字,即它的類型應該是Number。如果x不是Number類型的,那麼它會先被強制類型轉換為Number類型。
  • 如圖△CDE重心為G,咋確定G點求出AG與面ABCD夾角正弦值?須知這些
    ⑴證明:平面ABE⊥平面BCE;⑵記△CDE的重心為G,求直線AG與平面ABCD所成角的正弦值。這裡可以使用向量的方法去求解,但是仍然有很多同學在想,使用向量的方法,該G點的坐標也沒辦法求啊?因為G點所在的三角形三邊不能全求出來,即使是用向量也需要靠線段長度來定坐標啊?
  • 從零入門量化交易系列-python中幾個量化金融常用標準庫math,calendar,time,datetime
    math.acos(x)以弧度為單位返回 x 的反餘弦值。math.asin(x)以弧度為單位返回 x 的反正弦值。math.atan(x)以弧度為單位返回 x 的反正切值。math.cos(x)返回 x 弧度的餘弦值。math.hypot(x, y)返回歐幾裡德範數, sqrt(x*x + y*y) 。
  • 初三數學——正弦值,餘弦值和正切值
    無法區分正弦值,餘弦值和正切值?
  • JavaScript用Math.pow()求一個數的冪
    基本概念在使用數學的過程中,我們經常需要計算一個數的冪,即求一個數的多少次方。JavaScript已經為我們提供了這一功能,這就是Math.pow()方法的作用。pow是單詞「power」的前三個字母,而「power」有多個意思,其中之一就是「冪」,因此Math.pow()方法的名稱就已經暗示了它求冪運算的含義。
  • Python中的數學模塊:Math和Cmath
    math模塊中另一個有用的函數是gcd(x,y),求兩個數x和y的最大公約數(GCD)。當x和y均為不為零,則該函數返回可以整除x和y的最大正整數。你也可以做逆運算,通過使用asin(x),acos(x)和atan(x)計算給定值的角度,而不是計算某個角度的三角函數的值。你熟悉勾股定理嗎?它指出,斜邊長度的平方(與直角相對的一側)等於其他兩邊的平方和。斜邊也是直角三角形的最大邊。math模塊提供hypot(a, b)函數計算斜邊長度。
  • 高中數學,給出線面角的正弦值,實則給它,向量進一步的運用
    ⑴求證:四邊形BB1ED為平行四邊形;⑵若直線CB1與平面ABB1A1所成角的正弦值為√39/13,求AC/BD的值。第二問第二問求的是AC/BD的比值,而這裡給出最關鍵的已知點就是直線CB1與平面ABB1A1所成角的正弦值為√39/13,而這裡使用立體幾何中的一些定理、性質等常規的方式是很難找到直線CB1和面ABB1A1所成的角的,所以我們依然是要使用向量的方法將該線面角的正弦值表示出來。
  • JavaScript用Math.log1p()求自然對數
    區別就在於它們各自是對哪一個數求自然對數,這個數和它們的參數有什麼關係。我們將Math.log1p()的方法名分成三部分,分別為:log、1和p。其中log就是「求對數」的意思,1就是數字1;而p表示「plus」,即加法。因此Math.log1p()中的1p就表示「1加上」的意思,那麼到底加上什麼呢?當然就是後面括號中的參數了。
  • JavaScript求絕對值:Math.abs()方法
    因此,求絕對值方法被命名為abs。Math.abs()方法的語法結構如下所示:Math.abs(x);其中參數x應該是一個數字,即x的類型應該是Number。如果x不是Number類型,那麼它會先被強制類型轉換為Number類型。