2 Star 0 Fork 0

Weldon0/hrsaas-27

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
forEach.html 1.96 KB
一键复制 编辑 原始数据 按行查看 历史
Weldon 提交于 2022-05-02 15:01 . 员工详情界面结构搭建
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<script>
const arr = ['a', 'b', 'c']
const arr1 = ['d', 'e', 'f']
// 需求:实现一个myForEach
console.log(23)
// 功能:跟数组原有的forEach一模一样的功能
// filter/map
// 其他方法的实现借鉴forEach的实现
Array.prototype.myForEach = function (fn) {
for (let i = 0; i < this.length; i++) {
fn(this[i], i, this)
}
}
// fn(this[i], i, this)
// fn(this[i], i, this)
// fn(this[i], i, this)
// fn(this[i], i, this)
Array.prototype.myFilter = function (fn) {
const arr = []
for (let i = 0; i < this.length; i++) {
const flag = fn(this[i], i, this)
if (flag) arr.push(this[i])
}
return arr
}
Array.prototype.mySome = function (fn) {
for (let i = 0; i < this.length; i++) {
const flag = fn(this[i], i, this)
if (flag) return true
}
return false
}
Array.prototype.myEvery = function (fn) {
for (let i = 0; i < this.length; i++) {
const flag = fn(this[i], i, this)
if (!flag) return false
}
return true
// return arr
}
Array.prototype.myMap = function (fn) {
const arr = []
for (let i = 0; i < this.length; i++) {
arr.push(fn(this[i], i, this))
}
return arr
}
// arr.myForEach((item, index, data) => {
// console.log(`\n\n\n\n\n\n\n---------第${index}项`)
// console.log(item)
// console.log(index)
// console.log(data)
// })
// 数组方法都要写
// 写完之后就知道数组方法内部是怎么去判断数据的
// 实现一个forEach方法
arr.myForEach(item => {
console.log(item)
})
arr1.myForEach(item => {
console.log(item)
})
</script>
</body>
</html>
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/weldon/hrsaas-27.git
git@gitee.com:weldon/hrsaas-27.git
weldon
hrsaas-27
hrsaas-27
master

搜索帮助