Chúng tôi bắt buộc phải viết một hàm nhận vào hai số và trả về sản phẩm của chúng, nhưng không sử dụng toán tử (*).
Thủ thuật 1:Sử dụng toán tử chia hai lần
Chúng ta biết rằng phép nhân và phép chia chỉ là nghịch đảo của nhau, vì vậy nếu chúng ta chia một số cho nghịch đảo của số khác, nó sẽ không giống như nhân hai số phải không?
Hãy xem mã cho điều này -
const a = 20, b = 45; const product = (a, b) => a / (1 / b); console.log(product(a, b));
Thủ thuật 2:Sử dụng Logarit
Trước tiên, chúng ta hãy kiểm tra các thuộc tính của logarit -
log(a) + log(b) = log(ab)
Vì vậy, chúng ta hãy sử dụng thuộc tính này của logarit cho lợi ích của chúng ta. Mã cho điều này sẽ là -
Ví dụ
const a = 20, b = 45; const product = (a, b) => { const logProduct = Math.log(a) + Math.log(b); return Math.round(Math.exp(logProduct)); }; console.log(product(a, b));
Đầu ra
Đầu ra trong bảng điều khiển cho cả hai sẽ là -
900