JavaScript用Math.sqrt()求平方根

2020-12-10 青石野草

1. 基本概念

Math.sqrt()方法的名字sqrt是"square root"的縮寫,它代表的正是平方根。因此,Math.sqrt()方法的作用就是用來求一個數的平方根。它的語法結構如下所示:

Math.sqrt(x);

參數x應該是一個數字,即它的類型應該是Number。如果x不是Number類型的,那麼它會先被強制類型轉換為Number類型。在數學上要計算一個數的平方根,那麼這個數就不能為負數。Math.sqrt()同樣要求它的參數不能為負數,但有一個例外,那就是-0;在JavaScript中,-0的平方根就是-0本身。

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

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

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

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

4. 如果x是正無窮(Infinity),那麼結果也是正無窮(Infinity);

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

6. x為其它大於0的數字,結果為x的平方根。

2. 示例

2.1 參數為正數

我們先來看看用正數調用Math.sqrt()的結果,這也正是我們最常使用Math.sqrt()方法的情況,以下代碼的執行結果如圖1所示。

圖1 參數為正數的情況

2.2 參數為特殊值和負數

我們再來看看參數為特殊值和負數的場景,以下代碼的執行結果如圖2所示。注意在該示例中,我們用單獨的一條列印語句來列印-0的平方根。這是因為如果用同一條列印語句來同時列印提示字符串和結果值,那麼-0在轉換成字符串後就變成0了,列印出的結果會錯誤地顯示-0的平方根為0。

圖2 參數為特殊值和負數的情況

2.3 參數不是數字

最後,我們再來看看參數不是Number類型的情形,此時參數會先被轉換為Number類型。

圖3 參數需要類型轉換的情況

(完)

相關焦點

  • python計算平方和平方根的方法
    相反的開平方就是√ ̄(這裡我們只考慮正數),也就是求平方根。例如:16的平方根有4,64的平方根有8。python如何計算平方和平方根在python中,有多種方法可以求一個數的平方和平方根,可以使用:內置模塊、表達式、內置函數等實現。
  • 學會 Math 對象這 10 個方法,能讓你事半功倍!
    簡介JavaScript中的math 對讓我們能夠對執行一些數學操作
  • JavaScript - Math對象
    中其實是有很多數學計算的需求的,不過不必擔心系統給我們提供了大量的數學運算的方法供我們使用而這些方法全都存在於我們的Math對象中Math常用的屬性:Math.PI 相當於π 3.14159Math對象常用的函數:1.Math.round() 四捨五入舉個小例子:<script type = 「text/javascript
  • 單片機C語言實現求平方根算法
    C語言中要求平方根,可以在頭文件中加入#include <math.h>.然後調用sqrt(n);函數即可。但在單片機中調用此函數無疑會耗費大量資源和時間,是極不合適的。在此,總結下網上常見的四種單片機常用開方根算法:對於擁有專門的乘除法指令的單片機,可採用以下兩種方法:1、二分法對於一個非負數n,它的平方根不會小於大於(n/2+1)(謝謝@linzhi-cs提醒)。在[0, n/2+1]這個範圍內可以進行二分搜索,求出n的平方根。
  • 七天學會javascript第一天javascript介紹
    javascript介紹javascript數據類型javascript運算符javascript對象javascriptjavascript :客戶端編程。javascript是由客戶端去解釋運行的。怎麼引入javascript 呢?
  • 單片機求平方根的高效快速算法
    當我們使用8位MCU編程,用到求平方根算法時,如果調用自帶的子程序,那麼生產的代碼較多,效率低下。因為軟體自帶算法是用浮點數類型來計算的,現實中我們往往只需要返回整型數據,採用以下代碼求平方根將會大大提高計算效率。
  • javaScript Math常用方法
    Math.SQRT2 返回 2 的平方根(約等於 1.414)。一般都是轉換為正數處理例: console.log(Math.round(-3.5)); // 此例轉換為-4+0.5 ,結果為-3例: console.log(Math.round(-3.6)); //此例轉換為-4+0.4 結果為-4Math.max()、Math.min()求最大值最小值
  • 雲計算開發學習實例:Python3 平方根
    平方根,又叫二次方根,表示為〔√ ̄〕,如:數學語言為:√ ̄16=4。語言描述為:根號下16=4。以下實例為通過用戶輸入一個數字,並計算這個數字的平方根:執行以上代碼輸出結果為:在該實例中,我們通過用戶輸入一個數字,並使用指數運算符 ** 來計算該數的平方根。該程序只適用於正數。
  • C語言求解一個小於1000的整數的平方根
    實例:#include<stdio.h>#include<math.h> #define M 1000int main(){ int a; double b;",M);scanf("%d",&a);while(a>=M||a<=0){ printf("輸入錯誤,請輸入一個小於%d的正數:",M); scanf("%d",&a);}b=sqrt
  • Python中的數學模塊:Math和Cmath
    math模塊中另一個有用的函數是gcd(x,y),求兩個數x和y的最大公約數(GCD)。當x和y均為不為零,則該函數返回可以整除x和y的最大正整數。幸運的是,math模塊提供了很多函數來幫助我們計算對數。您可以使用log(x,[base])計算給定基數的值x的對數。如果省略可選基數參數,則x的對數計算以e為基數。在這裡,e是一個數學常數,其值是2.71828182 ....它可以使用math.e訪問。順便說一句,Python還允許您使用math.pi訪問另一個常量π。
  • JavaScript參考文檔之Math(數學對象)
    Math是一個對象,定義了引用有用的算術函數和常量的屬性。Math對象對這些函數 和常量進行了分組,使用語法如Math.sin(x); Math.PI。Math.SQRT1_2I -----------> 2的平方根除以1。Math.SQRT2 -----------> 2的平方根。
  • LeetCode69_求平方根
    題目實現 int sqrt(int x) 函數。計算並返回 x 的平方根,其中 x 是非負整數。
  • 單片機C語言求平方根函數
    先看下面兩個算式,x = 10*p + q (1)公式(1)左右平方之後得:x^2 = 100*p^2 + 20pq + q^2 (2)現在假設我們知道x^2和p,希望求出q來,求出了q也就求出了x^2的開方x了。
  • C語言 | 求100~200的素數​
    #include<stdio.h>//頭文件 #include<math.h>//為了引入sqrt求平方根函數 int main()//主函數 {  int number,i;//定義變量
  • 【python勸退指南】小學數學老師喊你回來用python學代數!
    開始做題首先看一道例題例:已知x=1,y=2,z=3,求2x+y-z的值。        相信各位看一眼應該就已經知道了答案,那麼接下來我們用python來求解這道題        看上去是不是很簡單,這就是python語言的魅力。除了用 * 號代替了 乘號,其餘部分完完全全都是代數的內容。
  • 「每日一練」巧用Python判斷101-200之間有多少個素數
    先上代碼~運行效果題目詳述程序分析:判斷素數的方法:用一個數分別去除2到sqrt(這個數),如果能被整除,則表明此數不是素數,反之是素數。第一行:list=[]設置一個空的列表變量list第二行:from math import sqrt引入一個sqrt方法,這個是用來求平方根的函數
  • math-engine v2.0,數學表達式解析計算引擎
    csc(pi/2) = 1 abs(x) 絕對值,absolute value abs(-6) = 6 ceil(x) 向上取整 ceil(4.2) = 5 floor(x) 向下取整 floor(4.8) = 4 round(x) 四捨五入取整 round(4.4) = 4, round(4.5) = 5 sqrt
  • NX之math函數
    本文基於NX10版本,詳細闡述NX中所有math函數(共26個)的含義與應用,掌握math函數是實現參數化建模的必要工具。
  • C++編程靈活使用while循環和for循環來求出100以內的所有素數
    /*******************************************題目:把100以內(不包括100)的所有素數都列印到屏幕上,並且求出素數的個數是多少?解題思路:最直觀的方法,根據定義,因為質數除了1和本身之外沒有其他約數,所以判斷n是否為質數,根據定義直接判斷從2到n-1是否存在n的約數即可以下這個程序代碼是用while循環嵌套的方法來實現。
  • 學會Math 對象這 10 個方法,能讓你事半功倍!
    簡介JavaScript中的math 對讓我們能夠對執行一些數學操作。它具有數學常數和函數的屬性和方法。在今天的文章中將介紹 Math對象的一些有用方法。