1.3 案例
//forEach 迭代(遍历)数组
let arr = [1, 2, 3]
arr.forEach((item, index, array) => {
console.log(“每个数组元素为” + item);
console.log(“每个数组元素的索引号为” + index);
console.log(“数组本身” + array);
})
/*
每个数组元素为1
每个数组元素的索引号为0
数组本身1,2,3
每个数组元素为2
每个数组元素的索引号为1
数组本身1,2,3
每个数组元素为3
每个数组元素的索引号为2
数组本身1,2,3
*/
创建一个新数组, 其包含通过所提供函数实现的测试的所有元素。
2.1 写法
array.filter( function(Item,index,arr) )
-
Item:数组当前项
-
index: 数组当前索引
-
arr: 数组本身
2.2 特点
-
有返回值:一个新的、由通过测试的元素组成的数组,如果没有任何数组元素通过测试,则返回空数组。
-
常用于在一个数组中,筛选出对自己有用的数据
2.3 案例
从数组中筛选出大于10的数字
//filter 迭代(遍历)数组
let arr = [1, 6, 14, 2, 42, 4]
let resuslt = arr.filter((item, index, array) => {
return item > 10
})
console.log(resuslt); // [14, 42]
some()方法用于检测数组中的元素是否满足指定条件.通俗点查找数组中是否有满足条件的元素
3.1 写法
array.some( function(Item,index,arr) )
-
Item:数组当前项
-
index: 数组当前索引
-
arr: 数组本身
3.2 特点
-
有返回值:注意它的返回值是布尔值,如果查找到这个元素,就返回true,如果找不到就返回false。
-
如果找到第一个满足条件的的元素,则终止循环,不再继续查找
3.3 案例
数组中是否有大于20的元素
//some 查找数组中是否有满足条件的元素
let arr = [1, 30, 14]
let resuslt = arr.some((item) => {
return item > 20
})
console.log(resuslt); // true
3.4 filter与some的区别
-
filter
也是查找满足条件的元素返回的是一个数组
而且是把所有
满足条件的元素返回回来 -
some
也是查找满足条件的元素是否存在 返回的是一个布尔值
如果查找到第一个
满足条件的元素就终止循环 I
map() 方法创建一个新数组,其结果是该数组中的每个元素是调用一次提供的函数后的返回值。
4.1 写法
array.map( function(Item,index,arr) )
-
Item:数组当前项
-
index: 数组当前索引
-
arr: 数组本身
4.2 特点
-
有返回值:一个由原数组每个元素执行回调函数的结果组成的新数组。
-
常用于改变数组中的元素,并组中一个
新数组
,和forEach有点相似,但是forEach
是直接改变原数组
,不返回新数组
4.3 案例
让数组中每一个元素自加一
//map 迭代(遍历)数组
let arr = [1, 6, 14, 2, 42, 4]
let resuslt = arr.filter((item) => {
return item + 1
})
console.log(resuslt); // [2, 7, 15, 3, 43, 5]
==========================================================================
trim() 方法会从一个字符串的两端删除空白字符
1.1 写法
str.trim()
1.2 特点
-
trim()方法并不影响原字符串,它返回的是一个新的字符串
-
trim()只能去除两边的空格,并不能去除中间的空格
1.3 案例
//some 查找数组中是否有满足条件的元素
let str = " andy "
let resuslt = str.trim()
console.log(resuslt); //andy
=========================================================================
Object.defineProperty()定义对象中新属性或者修改原有属性。
Object.defineProperty(obj,prop,descriptor)
-
obj
:必需。目标对象 -
prop(str)
∶必需。需定义或修改的属性的名字 -
descriptor(obj)
:必需。目标属性所拥有的特性
Object.defineProperty)第三个参数descriptor说明︰以对象形式{}
书写
-
value:设置属性的值默认为undefined
-
writable:值是否可以重写。true | false 默认为false
-
enumerable:目标属性是否可以被枚举。true | false 默认为false
-
configurable:目标属性是否可以被删除或是否可以再次修改特性true | false 默认为false
-
将obj对象的价格改为1000
-
将obj的id改为
不可重写
//Object.defineProperty() 定义新属性或修改原有的属性
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)
![](https://img-blog.csdnimg.cn/img_convert/dd98d9659d4b5fb4a504a8869763becc.jpeg)
最后
由于篇幅限制,pdf文档的详解资料太全面,细节内容实在太多啦,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!有需要的程序猿(媛)可以帮忙点赞+点击【学习资料】即可领取!
2995796767)]
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)
![](https://img-blog.csdnimg.cn/img_convert/dd98d9659d4b5fb4a504a8869763becc.jpeg)
最后
由于篇幅限制,pdf文档的详解资料太全面,细节内容实在太多啦,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!有需要的程序猿(媛)可以帮忙点赞+点击【学习资料】即可领取!
[外链图片转存中…(img-P3R55U9S-1712995796768)]
[外链图片转存中…(img-FrKpXtCs-1712995796768)]