前言
最近又有重新学一遍js基础的想法,今天付诸实践了,找到了一篇教程,链接如下https://zh.javascript.info/function-basics#han-shu-powxn,讲的挺好的,用户体验不错。
函数一讲中的pow方法实现
今天啊,看到了函数一讲,练习题中,有这么一个问题。
题:写一个函数 pow(x,n),返回 x 的 n 次方。换句话说,将 x 与自身相乘 n 次,返回最终结果。
pow(3, 2) = 3 * 3 = 9
pow(3, 3) = 3 * 3 * 3 = 27
pow(1, 100) = 1 * 1 * ...*1 = 1
创建一个 web 页面,提示输入 x 和 n,然后返回 pow(x,n) 的运算结果。
解决方案:
function pow(x, n) {
let result = x;
for (let i = 1; i < n; i++) {
result *= x;
}
return result;
}
let x = prompt("x?", '');
let n = prompt("n?", '');
if (n < 1) {
alert(`Power ${n} is not supported, use a positive integer`);
} else {
alert( pow(x, n) );
}
看到教程代码实现的时候,我心里不由的升起一个疑问,明明有幂运算符**可以是函数实现的更加简便,实现代码如下:
function pow(x, n) {
return x**n;
}
结语
这篇博客是在我看完这道练习题之后写的,实在有些疑惑,希望来个大佬评论指点指点