3

JavaScript 求幂运算符

 1 year ago
source link: https://www.myfreax.com/javascript-exponentiation-operator/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client
JavaScript 求幂运算符

JavaScript 求幂运算符

在本教程中,您将学习如何使用 JavaScript 求幂运算符 ** 来计算一个数的指数次方。

JavaScript 求幂运算符简介

要计算一个数的指数次方,通常使用静态方法 Math.pow() ,它具有以下语法:

Math.pow(base, exponent)
let result = Math.pow(2,2);
console.log(result); // 4

result = Math.pow(2,3);
console.log(result); // 8

ECMAScript 2016 提供了另一种方法来获取指数幂的底数,方法是使用求幂运算符 **,它具有以下语法:

x**n

运算符 ** 将 x 提高到指数 n 次方。

请注意,某些语言使用脱字符号 ^ 来求幂。但是,JavaScript 已经将该符号用于按位逻辑运算符。

以下示例说明如何使用求幂运算符 **

let result = 2 ** 2;
console.log(result); // 4

result = 2 ** 3;
console.log(result); // 8

Math.pow() 接受一个值并将其转换为数字类型的值进行计算。同样,运算符 ** 接受 number 类型的值。此外,运算符 ** 也接受 bigint 类型的值。例如:

let result = 2n ** 3n;
console.log(result); // 8n

此外,您可以在中缀表示法中使用求幂运算符 **。例如:

let x = 2;
x **= 4;
console.log(x); // 16

JavaScript 不允许您将一元运算符紧接在基数之前。如果您尝试这样做,您将获得语法错误 SyntaxError

Uncaught SyntaxError: Unary operator used immediately before exponentiation expression. Parenthesis must be used to disambiguate operator precedence。

以下示例导致语法错误:

let result = -2**3;

要解决此问题,您可以像这样使用括号:

let result = (-2)**3;
console.log(result); // -8
  • 求幂运算符 ** 将数字提高到指数的次方。
  • 求幂运算符接受 number 或者 bigint 类型的值。

微信公众号

支付宝打赏

myfreax 淘宝打赏

Recommend

  • 79

    最近看到一些代码中用到了位运算符,表示好奇。在前端开发中有哪些使用呢。来总结一下~ 注:使用为运算符的代码可读性变差,建议斟酌使用。有问题欢迎指正或者补充 应用 判断奇偶数 num & 1 === 1 // num 为奇数 num & 1

  • 38

    “JavaScript的很多奇技淫巧,都来自于对运算符的灵活使用。” 1 运算符基础 1.1 优先级: 优...

  • 37
    • www.tuicool.com 5 years ago
    • Cache

    JavaScript 一元正号运算符

    本文适合JavaScript初学者。 一元正号介绍 一元正号运算符(+)位于其操作数前面,计算其操作数的数值,如果操作数不是一个数值,会尝试将其转换成一个数值。 尽管一元负号也能转换非数值类型,但是一元正号是转换其他...

  • 61
    • www.tuicool.com 5 years ago
    • Cache

    有趣的 JavaScript 运算符用法

    JavaScript 提供了几种运算符,可以用来对简单的值执行一些基本操作,如算术运算、赋值、逻辑运算、按位运算等。 JavaScript 代码中赋值、算术和逻辑三种运算符经常会混合使用,但按位运算符就用得没那么多了。 JavaScrip...

  • 24
    • 微信 mp.weixin.qq.com 4 years ago
    • Cache

    在JavaScript中使用Spread运算符的8种方法

    了解如何在JavaScript中使用Spread(延展操作)运算符。 ES6中引入了延展操作运算符( ... )。 延展操作运算符将可迭代的对象扩展为其单独的元素,可迭代对象是可以使用 for...

  • 7

    Brendan Eich在设计JavaScript的时候是没有加入类型系统的,所以JavaScript是一门动态语言,类型是进入执行上下文的时候可能才去确定,这就可能出现一个JavaScript变量在上一瞬间是String,下一瞬间就是Number了,在这个过程中,JavaScript变量进行了类型的转换...

  • 7

    你有没有花一个下午的时间浏览过 Mozilla 文档?如果你有,你会很清楚网上有很多关于 JavaScript 的信息。这使得人们很容易忽略一些不同寻常的 JavaScript 操作符。 然而,仅仅因为这些操作符不常见并不意味着它们不强大!它们在语法上看起来都很相似,...

  • 7

    逻辑运算符 在Javascript中,有逻辑运算符 与 &&, 或 ||, 非 !,常在条件句或循环中进行逻辑判断。 var a = 1, b = 1, c = 2; if (a = b && (b = c || a != c))...

  • 6

    V2EX  ›  JavaScript 最近在恶补 JavaScript,对运算符这个地方不太理解   LxnChan · 20 小时...

  • 4
    • www.cnblogs.com 2 years ago
    • Cache

    Quick Pow: 如何快速求幂 - 林子er

    Quick Pow: 如何快速求幂 今天讲个有趣的算法:...

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK