Javascript数学运算

在所有编程语言中,执行数学运算都是例行公事。任何应用程序都需要加法、减法和许多其他操作。在 Javascript 中,我们可以通过简单的操作和利用 JavascriptMath对象来做到这一点。

Note: 要进行数学运算,我们需要比较数字。引号中的数字在数学运算中不起作用。

数学运算#

让我们看一个简单的数学运算,我们如何在此处介绍的变量中使用数学。基本的数学运算就像我们将它们写在纸上一样:

let i = 1;
let j = i + 10;

上面,我们定义了一个变量i。然后我们定义另一个变量 ,j它等于i加 10。因此,当我们在代码中引用时j,它将返回 11。

我们可以做很多其他的数学运算。让我们来看看它们。

Javascript算术运算符

运算符它能做什么代码示例
+将两个数字相加10 + 5 返回 15
从另一个数字中减去一个数字10 - 5 返回 5
+一个数除以另一个数10 / 5 返回 2
*将两个数相乘10 * 5 返回 50
%获取计算的余数12 % 5 返回 2(12 除以 5 余数为 2)
**将一个数字提高到另一个数字的幂2 ** 3 返回 8(2 的 3 次方是 8)

试试看!

    let x = 12;
    let y = 15;
    let add = x + y;
    let remainder = x % y;
    let raiseToPower = x ** y; 
    let divide = x / y;

    console.log("Addition: " + add);
    console.log("Remainder: " + remainder);

数学常数#

除了能够使用 Javascript 中的运算符进行基本数学运算外,我们还拥有 Javascript 中的Math对象。这个对象让我们可以访问数学常数并做一些更复杂的数学运算。

让我们从查看数学常数开始下面是我们如何访问 PI 的示例。

let pi = Math.PI; // returns 3.141...

在 Javascript 中,我们使用点来表示Math对象的特定子对象。这些都是预定义的,因此它们作为基本 Javascript 的一部分存在。上面的代码将返回值 PI – 但最常见的数学常数在 Javascript 中可用。这些无理数都列在下面,可以像正常数一样使用:

数学常数它能做什么
Math.PI返回 PI3.141 …
Math.E返回 欧拉数2.718 …
Math.E返回 Euler’s number2.718 …
Math.LN2返回 ln(2)0.693 …
Math.LOG10E返回 log10(e)0.434 …
Math.LOG2E返回 log2(e)1.442 …
Math.LN10返回 ln(10)2.302 …
Math.SQRT2返回 2 的平方根1.414 …
Math.SQRT1_2返回 1/2 的平方根0.707 …

Javascript 中的数学符号#

如果您习惯于在数学环境中工作,那么您将习惯于科学或数学符号。我们可以在 Javascript 中使用数学符号。3124的数学符号可以写成 3.124e3

let myMathNotation = 3.124e3
console.log(myMathNotation);

我们使用 e 来指代指数。以上与写3.124 x 10 3相同。

舍入和静态方法#

我们可以使用Math对象来做一些更复杂的数学运算,使用它内置的函数。这些函数将一个数字作为一个值,然后进行相应的调整。让我们看几个例子。

绝对值

Math.abs接受一个数字并返回其绝对值。所有这意味着,如果它是负面的,它是否使它成为积极的,如果它已经是,它保持它是积极的。它相当于数学的量级概念。

let absoluteNumber = Math.abs(-2); // Returns 2.

Floor

Math.floor取一个数字并向取整。这仅适用于小数。

let roundItDown = Math.floor(2.8371); // Returns 2.

Ceil

Math.ceil取一个数字并四舍五入。这仅适用于小数。

let roundItDown = Math.ceil(2.8371); // Returns 3.

Round

Math.round取一个数字并将其四舍五入。这仅适用于小数。

let roundItDown = Math.ceil(1.453); // Returns 1.

Max

Math.max取一组用逗号分隔的数字,并选择最大的一个。

let biggestNumber = Math.max(2, 3, 6); // Returns 6.

Min

Math.min取一组用逗号分隔的数字,并选择最小的一个。

let smallestNumber = Math.min(2, 3, 6); // Returns 2.

更多静态方法#

这些有用的运算让我们可以对数字进行操作或执行数学运算。

Pow

Math.pow取一个数,并将其提高到一定的幂。它类似于**我们之前看到的算术运算符。

let toThePower = Math.pow(2, 3); // Returns 8, i.e. 2 to the power of 3.

Sign

Math.sign接受一个数字,并返回它的符号。不要与sin混淆

let getSign = Math.sign(-14); // Returns -1
let getAnotherSign = Math.sign(14); // Returns 0

Trunc

Math.trunc接受一个数字,并且只返回它的整数部分。

let truncIt = Math.trunc(14.2431); // Returns 14

Sqrt

Math.sqrt接受一个数字,并返回它的平方根。

let sqrtIt = Math.sqrt(4); // Returns 2

Cbrt

Math.sqrt接受一个数字,并返回它的立方根。

let cbrtIt = Math.sqrt(8); // Returns 2

Random

Math.random返回一个介于 0 和 1 之间的随机数。

let randomNumber = Math.random(); // As an example, may return 0.4845737088624795

Logs

在 Javascript 中进行日志记录的方法有很多种,如下所示:

let naturalLog = Math.log(10); // The natural log of 10
let log10 = Math.log10(10); // The base 10 log of 10
let log2 = Math.log2(10); // The base 2 log of 10
let log2 = Math.log1p(10); // The natural log of 1 + 10

几何操作#

我们可以运行大量操作来操作和计算几何图形。这些几何函数的列表如下所示。对于所有这些,假设数字以弧度为单位

除了基本的 sin、cos 和 tan 运算外,我们还提供了每个函数的弧版本(在函数前面用a表示)和双曲线版本(在末尾用h表示)。

let x = 1.4;

// Geometry mathematical functions
Math.sin(x);
Math.cos(x);
Math.tan(x);
Math.asin(x);
Math.acos(x);
Math.atan(x);
Math.sinh(x);
Math.cosh(x);
Math.tanh(x);
Math.asinh(x);
Math.acosh(x);
Math.atanh(x);

ParseFloat 和 ParseInt#

能够在 Javascript 中进行数学运算很棒,但是如果您还记得我们关于 types 的文章,那么写成字符串的数字在 Javascript 中不会被视为数字。要将字符串中的数字更改为"5"实数,我们可以使用函数parseFloat(将数字更改为浮点数)或parseInt将数字更改为整数 – 当然区别在于整数具有没有小数,而浮点数可以。

这两个函数都接受数字和数学符号中的数字。

例如:

let myNumber = "12345" // type: String
let myOtherNumber = "1.3453"; // type: String

// Let's parse our numbers
let parseNumber = parseFloat(myNumber); // Returns 12345 type: Number
let parseNumber = parseFloat(myOtherNumber); // Returns 1.3453 type: Number
let parseNumber = parseInt(myOtherNumber); // Returns 1 type: Number

这些函数在类型并不总是一致的 vanilla Javascript 中非常有用。使用这些,我们可以将数字卡在字符串中,并将它们转换为我们可以进行计算的实数类型。

结论#

Javascript 有很多有趣的数学运算方式,并且通过Math对象提供了很多常用的数学常数。除此之外,我们还有许多静态函数可以用来通过同一个Math函数来操作数字。我们已经在本指南中学习了如何使用所有这些,以及如何使用parseInt/将一串数字强制转换为数字parseFloat。所有这些技术都是 Javascript 中的重要概念,在构建应用程序时非常有用。