- 在原型上实现find方法
Array.prototype.myFind = function (callback) {
for (let i = 0; i < this.length; i++) {
//callback需要三个参数:element(当前正在处理的函数),index(当前元素在数据库中的索引),array(调用find()的备份本身)
if (callback(this[i], i, this)) {
return this[i]
}
}
return undefined
}
const num = [1, 2, 3, 5, 6]
let arr = num.find(element => element > 4)
console.log(arr)
反思:
- 对原型的理解不深刻,无从下手
- find函数完全记错了
编写一个计算数学函数f(n)的代码。
根据问题描述,数学函数f(n)有以下定义:
当n=1时,f(n)=1;
当n=2时,f(n)=2;
当n=3时,f(n)=3;
当n>3时,f(n)是i=3到n时f(i-1)和f(i-2)的乘积的和。
function f(n) {
if (n <= 3) {
return n
}
let sum = 0
for (let i = 3; i <= n; i++) {
sum += f(i - 1) * f(i - 2)
}
return sum
}
console.log(f(1))
console.log(f(4))