Computer >> Máy Tính >  >> Lập trình >> Javascript

Kiểm tra xem một số có phải là sức mạnh của JavaScript khác hay không

Chúng tôi bắt buộc phải viết một hàm JavaScript có hai số, giả sử là m và n. Hàm sẽ kiểm tra xem m có phải là lũy thừa của n hay không.

Nếu đúng thì trả về true, ngược lại thì trả về false.

Ví dụ -

m = 8, n = 2 should return true
m = 100, n = 10 should return true
m = .01, n = 10 should return true
m = 21, n = 3 should return false

Ví dụ

const isPower = (m, n) => {
   let sign = m < 1;
   if (!m) {
      return false;
   };
   while (m !== 1) {
      if (sign) {
         m *= n;
      }
      else {
         m /= n;
      }
      if (sign ? m > 1 : m < 1) {
         return false;
      }
   };
   return true;
}
console.log(isPower(0.01, 10));
console.log(isPower(1000, 10));
console.log(isPower(1001, 10));
console.log(isPower(8, 2));
console.log(isPower(0.125, 2));

Đầu ra

Điều này sẽ tạo ra kết quả sau -

true
true
false
true
true