1. 程式人生 > >JavaScript Math和Number物件

JavaScript Math和Number物件

目錄

1. Math 物件 :數學物件,提供對資料的數學計算。如:獲取絕對值、向上取整等。無建構函式,無法被初始化,只提供靜態屬性和方法。

2. Number 物件 :Js中提供數字的物件。包含整數、浮點數等等。並提供數字的型別轉換、小數點擷取等方法。

1. Math 物件

1.1 介紹

  Math 物件,是數學物件,提供對資料的數學計算,如:獲取絕對值、向上取整等。無建構函式,無法被初始化,只提供靜態屬性和方法。

1.2 建構函式

  無 :Math 物件無建構函式,無法被初始化,只提供靜態屬性和方法。

1.3 靜態屬性

1.3.1 Math.E 常量e。返回自然對數的底數:2.718281828459045

1.3.2 Math.PI :常量π。返回圓周率的值 :3.141592653589793

1.4 靜態方法

1.4.1 Math.sin(value) :正弦函式
1.4.2 Math.cos(value) 餘弦函式
1.4.3 Math.tan(value) :正切函式
1.4.4 Math.asin(value) :反正弦函式
1.4.5 Math.acos(value) :反餘弦函式
1.4.6 Math.atan(value) :反正切函式

1.4.7 Math.abs(value) :返回絕對值

引數:

①value {Number | NumberStr} :數字或者純數字的字串。

返回值:

{Number} 返回引數的絕對值數字。若引數不為數字,返回NaN。

示例:

Math.abs('123'); // => 123 :純數字字串
Math.abs('-123'); // => 123
Math.abs(123); // => 123 
Math.abs(-123); // => 123
Math.abs('123a'); // => NaN :非純數字字串

1.4.8  Math.ceil(value) : 對一個數向上取整,並不是四捨五入

引數:

①value {Number | NumberStr} :數字或者純數字的字串。

返回值:

{Number} 返回取整後的值。若引數不為數字,返回NaN。

示例:

Math.ceil(2.7); // => 3
Math.ceil(2.3); // => 3 :2.3 向上取整返回 3
Math.ceil(-2.7); // => -2
Math.ceil(-2.3); // => -2
Math.ceil('2.7'); // => 3 :純數字字串
Math.ceil('2.7a'); // => NaN :非純數字字串

1.4.9 Math.floor(value) :對一個數向下取整,並不是四捨五入

引數:

①value {Number | NumberStr} :數字或者純數字的字串。

返回值:

{Number} 返回取整後的值。若引數不為數字,返回NaN。

示例:

Math.floor(2.7); // => 2
Math.floor(2.3); // => 2
Math.floor(-2.7); // => -3 :-2.7 向下取整返回 -3
Math.floor(-2.3); // => -3
Math.floor('2.7'); // => 2 :純數字字串
Math.floor('2.7a'); // => NaN :非純數字字串

1.4.10 Math.max(value1,value2...valueN) :返回引數中最大的值

引數:

①value1,value2.....valueN {Number | NumberStr} :數字或者純數字的字串。

返回值:

{Number} 返回最大值。若一個引數不為數字,返回NaN。

示例:

Math.max(1, 2, 3, 4, 5); // => 5
Math.max(1, 2, 3, 4, '5' ); // => 5
Math.max(1, 2, 3, 4, 'a'); // => NaN 

1.4.11 Math.min(value1,value2...valueN) :返回引數中最小的值

引數:

①value1,value2.....valueN {Number | NumberStr} :數字或者純數字的字串。

返回值:

{Number} 返回最大值。若一個引數不為數字,返回NaN。

示例:

Math.min(1, 2, 3, 4, 5); // => 1
Math.min('1', 2, 3, 4, 5); // => 1
Math.min(1, 2, 3, 4, 'a'); // => NaN 

1.4.12 Math.pow(x,y) :返回x的y次方

引數:

①x {Number | NumberStr} :數字或者純數字的字串。

②y {Number | NumberStr} :數字或者純數字的字串。

返回值:

{Number} 返回x的y次方。若一個引數不為數字,返回NaN。

示例:

Math.pow(2, 3); // => 8 :2的3次方
Math.pow(3, 2); // => 9 :3的2次方
Math.pow('4', 2); // => 16 :4的2次方
Math.pow('2a', 2); // => NaN

1.4.13 Math.random() :返回一個偽隨機數,大於0,小於1.0

引數:

返回值:

{Number} 返回一個偽隨機數,大於0,小於1.0

示例:

Math.random(); // => 0.8982374747283757
Math.random(); // => 0.39617531932890415 
Math.random(); // => 0.35413061641156673
Math.random(); // => 0.054441051790490746 

1.4.14 Math.round(value) : 四捨五入後取整

引數:

①value {Number | NumberStr} :數字或者純數字的字串。

返回值:

{Integer} 返回引數四捨五入後的整數。若引數不為數字,返回NaN。

示例:

Math.round(2.5); // => 3
Math.round(2.4); // => 2
Math.round(-2.6); // => -3 
Math.round(-2.5); // => -2 :-2.5四捨五入為 -2
Math.round(-2.4); // => -2
Math.round('2.7'); // => 3 :純數字字串
Math.round('2.7a'); // => NaN :非純數字字串

1.4.15 Math.sqrt(value) :返回引數的平方根

引數:

①value {Number | NumberStr} :數字或者純數字的字串

返回值:

{Number} 返回引數的平方根

示例:

console.log( Math.sqrt(9) ); // => 3
console.log( Math.sqrt(16) ); // => 4
console.log( Math.sqrt('25') ); // => 5
console.log( Math.sqrt('a') ); // => NaN

2. Number 物件

2.1 介紹

  Number 物件,是數字物件,包含js中的整數、浮點數等等。

2.2 定義

var a = 1;
var b = 1.1;

2.3 靜態屬性

2.3.1 Number.MAX_VALUE :表示JS中最大的數字,約為 1.79e+308

2.3.2 Number.MIN_VALUE :表示JS中最小的數字,約為 5e-324

2.3.3 Number.NaN :返回NaN,表示非數字值,與任意其他數字不等,也包括NaN本身。應使用Number.isNaN() 來進行判斷。

2.3.4 Number.NEGATIVE_INFINITY :返回 -Infinity ,表示負無窮。

2.3.5 Number.POSITIVE_INFINITY  :返回 Infinity ,表示正無窮。進行計算的值大於Number.MAX_VALUE就返回 Infinity 。

2.4 靜態方法

2.4.1 Number.isInteger(value) :判斷引數是否為整數 

引數:

①value {Number} :數字

返回值:

{Boolean} 返回引數是否為整數 。純整數的字串也返回false。

示例:

Number.isInteger(1); // => true 
Number.isInteger(1.1); // => false 
Number.isInteger('1'); // => false :純整數的字串也返回false
Number.isInteger('1.1'); // => false 
Number.isInteger('a'); // => false :非字串返回false

2.4.2 Number.isNaN(value) :判斷引數是否為NaN

引數:

①value {Object} :任意型別

返回值:

{Boolean} 返回引數是否為NaN 。

示例:

Number.isNaN(NaN); // => true 
Number.isNaN('NaN'); // => false :'NaN'字串,並不為NaN 
Number.isNaN(1); // => false 
Number.isNaN('1'); // => false 

2.4.3 Number.parseFloat(value) :把引數轉換為浮點數

引數:

①value {Number | NumberStr} :數字或者純數字的字串

返回值:

{Integer | Float} 返回整數或浮點數數值

示例:

Number.parseFloat(1); // => 1 :整數還是返回整數
Number.parseFloat(1.1); // => 1.1 
Number.parseFloat('1aaa'); // => 1 :字串前面為數字的,只返回數字
Number.parseFloat('1.1aaa'); // => 1.1 
Number.parseFloat('a1'); // => NaN :非數字開頭,返回NaN
Number.parseFloat('a'); // => NaN 

2.4.4 Number.parseInt(value) :把引數轉換為整數

引數:

①value {Number | NumberStr} :數字或者純數字的字串

返回值:

{Integer} 返回整數數值

示例:

Number.parseInt(1); // => 1
Number.parseInt(1.1); // => 1 :浮點數返回整數
Number.parseInt('1aaa'); // => 1 :字串前面為數字的,只返回數字
Number.parseInt('1.1aaa'); // => 1
Number.parseInt('a1'); // => NaN :非數字開頭,返回NaN
Number.parseInt('a'); // => NaN 

2.5 例項方法

2.5.1 toExponential(value) :將一個數字轉為指數型別,引數表示小數點後的位數

引數:

①value {Number}  :表示小數點後的位數

返回值:

{String} 返回轉換後的指數型別字串

示例:

(123456789).toExponential(2); // => 1.23e+8 :小數點2位
(123456789).toExponential(5); // => 1.23457e+8 :小數點5位
(123456789).toExponential(10); // => 1.2345678900e+8 :小數點10位,不足位數用0補位

2.5.2 toFixed(value) :將一個數字轉換為指定小數位數的字串。不傳入引數,就是沒小數位。返回值為四捨五入

引數:

①value {Number}  :表示小數點後的位數

返回值:

{String} 返回轉換後的字串;不夠小數位以0填充;返回值為四捨五入後的值

示例:

console.log((1).toFixed(2)); // => 1.00 
console.log((1.2).toFixed(2)); // => 1.20 :不足位數,以0補位
console.log((1.277).toFixed(2)); // => 1.28 :進行了四捨五入

2.5.3 toString() :使用指定的進位制,將一個數字轉換為字串。不傳入引數,預設為十進位制。

引數:

①value {Number}  :表示進位制數,取值範圍:2到36

返回值:

{String} 轉換後進制的字串

示例:

(10).toString(); // => 10 :預設為十進位制
(10).toString(2); // => 1010 :二進位制
(10).toString(10); // => 10 :十進位制
(10).toString(16); // => a :十六進位制

2.6 應用場景

2.6.1 浮點數的加減乘除異常

說明:Js中的2個浮點數進行加減乘除運算,會返回異常的數值,如:0.2+0.7,返回0.899999999999。可以使用toFixed()方法,指定小數位。

示例:

console.log(0.2 + 0.7); // => 0.8999999999999999
console.log(0.7 - 0.5); // => 0.19999999999999996 
console.log(3.03 * 10); // => 30.299999999999997

// 使用toFixed()方法
console.log( (0.2 + 0.7).toFixed(2) ); // => 0.90 
console.log( (0.7 - 0.5).toFixed(2) ); // => 0.20  
console.log( (3.03 * 10).toFixed(2) ); // => 30.30 

2.6.2 減法運算

說明:Js中進行減法運算時,會先把前後的值轉換為數值再進行運算。若轉換失敗,返回NaN。

示例:

console.log('1' - 0); // => 1 :純數字字串減去0,可以快速轉換為Nubmer物件
console.log( ('1' - 0).toFixed(2) ); // => 1.00 :快速轉換為Nubmer物件後呼叫例項方法
console.log('1' - 'a'); // => NaN :一方無法轉換為Nubmer物件

相關推薦

JavaScript MathNumber物件

目錄 1. Math 物件 :數學物件,提供對資料的數學計算。如:獲取絕對值、向上取整等。無建構函式,無法被初始化,只提供靜態屬性和方法。 2. Number 物件 :Js中提供數字的物件。包含整數、浮點數等等。並提供數字的型別轉換、小數點擷取等方法。 1. Math 物件 1.1 介紹   M

html javascript全域性函式Number物件

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head

JavaScript 基礎之Number 物件(五)

toString() 方法 輸出16進位制、8進位制、2進位制。 var myNumber=128; myNumber.toString(16); // 返回 80 myNumber.toString(8); // 返回 200 myNumber.toString(2); // 返回 1000

從零開始學習前端JAVASCRIPT — 4、JavaScript基礎MathDate對象的介紹

日期格 3.6 一次函數 gety 位置 隨機 urn margin 開始 Math對象的介紹 1:Math對象 Math 對象用於執行數學任務。並不像 Date 和 String 那樣是對象的類,因此沒有構造函數 Math()。您無需創建它,通過把 Math 作為對

前端(十四)—— JavaScript基礎:Number、Date類、字串、陣列、Math類、正則

JS常用類:Number類、Date類、Math類、字串、陣列、正則 一、Number 1、常用數字 整數:10 小數:3.14 科學計數法:1e5 | 1e-5 正負無窮:Infinity | -Infinity 2、常用進位制 二進位制:0b1010 以0b開頭 八進位制:012 以0

深入javascript——建構函式原型物件

  常用的幾種物件建立模式 使用new關鍵字建立 最基礎的物件建立方式,無非就是和其他多數語言一樣說的一樣:沒物件,你new一個呀! var gf = new Object(); gf.name = "ta

JavaScript操作BOM物件 - document物件; history location物件 ,對話方塊,Date時間物件

getElementById返回擁有指定id的第一個物件(注意只是一個且是第一個)getElementsByName返回帶有指定名稱的物件集合getElementsBytagNam返回指定標籤的物件集合例html程式碼<div class="content" > <div cl

【進階1-2期】JavaScript深入之執行上下文棧變數物件

本期的主題是呼叫堆疊,本計劃一共28期,每期重點攻克一個面試重難點,如果你還不瞭解本進階計劃,文末點選檢視全部文章。 如果覺得本系列不錯,歡迎點贊、評論、轉發,您的支援就是我堅持的最大動力。 JS是單執行緒的語言,執行順序肯定是順序執行,但是JS 引擎並不是一行一行地分析和執行程式,而是一段一段地分析

JavaScript Math 物件常用方法與大全詳解 整數,取整,四捨五入,隨機數

Math 是一個內建物件, 它具有數學常數和函式的屬性和方法。不是一個函式物件。 JavaScript Math 物件 描述節 與其它全域性物件不同的是, Math 不是一個構造器. Math 的所有屬性和方法都是靜態的. 你用到的常數pi可以用 Math.PI

JavaScript】Bom物件Dom物件

BOM:Browser Object Model(瀏覽器物件模型) 就是在JS程式碼中可以直接使用的物件,但是物件都是和瀏覽器有關的 Example: <script> window.close(); </script> (1)Wi

PHP全站開發工程師-第14章 JavaScript DOM物件BOM物件

第一階段(A)(前端) 20天 120學時 第14章 JavaScript DOM物件和BOM物件(6) [學習課時] 本章共需要學習  6  課時 [目的要求]  掌握JavaScript DOM物件 掌握JavaScript BOM物件 [教學內容

javascript 本地物件、內建物件宿主物件

javascript中本地物件、內建物件和宿主物件 一般來說,可以建立並使用的物件有三種:本地物件、內建物件和宿主物件。 本地物件 ECMA-262 把本地物件(native object)定義為“獨立於宿主環境的 ECMAScript 實現提供的物件”。簡單來

JavaScript 函式JavaScript Array(陣列)物件

JavaScript Array(陣列)物件 定義陣列 陣列物件用來在單獨的變數名中儲存一系列的值。 我們使用關鍵詞 new 來建立陣列物件。下面的程式碼定義了一個名為 myArray 的陣列物件

JavaScript時間物件

物件Object() 建立物件的第一種方式,使用new運算子建立Object(),也可以省略new 直接寫Object(): <script> var box = new Object(); // 定義物件的屬性 box.name = '張三'; box sex

ES6新特性:Javascript中的MapWeakMap物件

  Map物件   Map物件是一種有對應 鍵/值 對的物件, JS的Object也是 鍵/值 對的物件 ;   ES6中Map相對於Object物件有幾個區別:   1:Object物件有原型, 也就是說他有預設的key值在物件上面, 除非我們使用Object.create(null)建立一個沒有原型

javascript面向物件系列第一篇——建構函式原型物件

前面的話   一般地,javascript使用建構函式和原型物件來進行面向物件程式設計,它們的表現與其他面向物件程式語言中的類相似又不同。本文將詳細介紹如何用建構函式和原型物件來建立物件 建構函式   建構函式是用new建立物件時呼叫的函式,與普通唯一的區別是建構函式名應該首字母大寫 func

JavaScript-05-內建物件windowdocument

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px "Yuanti SC"; color: #000000; background-color: #ffffff } 一、window 全域性函式+動態跳轉:window.location.href

javascript的建構函式例項物件、prototype__proto__的區別,原型物件及構造器的理解

一、前言   我們先通過程式碼來分別打印出例項物件、建構函式,以及修改了原型物件的建構函式,通過對比內部結構來看看他們之間的區別。 //定義建構函式 function Person(name, age){ this.name = name; this.age = age;

javascript中密封、凍結防止物件擴充套件

在現代的JavaScript中,物件是不可分割的,對物件周圍的主題有很強的理解是編寫更好的JavaScript所必需的。您可以用JavaScript以四種方式建立物件。 一旦知道如何建立物件,您可能希望瞭解物件屬性描述符。綜上所述,假設您有一個物件——cat: var cat = {

JavaScript Math物件 ceil()、floor()、round()方法

Math.ceil() 功能:對一個數進行上取整。 語法:Math.ceil(x) 引數: x:一個數值。 返回值:返回大於或等於x,並且與之最接近的整數。 注:如果x是正數,則把小數“入”;如果x是負數,則把小數“舍”。 例: <script type="text/javascript"&g