前端基础知识巩固

26 阅读5分钟

个人技术知识巩固

1.vue组件通信的attrsattrs和listener:(爷孙组件通信,爷组件向子组件以及孙组件之间的通信)

$attrs:

  1. 在当前组件b中使用this.$attrs可以接收父组件a传递的属性对象(非props定义的参数和calss/style)
  2. 继续在当前组件b添加 v-bind="$attrs" 可以把父组件a的属性对象传递给子组件c
  3. 子组件可以使用props接收a,b组件传递的属性。也可以直接使用this.$attrs接收属性

$listener:

  1. 相当于组件c定义一个this.$emit('change')事件函数,可以传递到组件b,组件b可以使用@change接收这个事件
  2. 如果组件a要接收这个事件,可以直接在组件b上写上v-on="$listener",这样组件a也可以使用@change接收这个事件

2.数组原型方法:

  1. join() 把数组分割为字符串,元素通过指定的分隔符进行分隔。
  2. split()把字符串分割为数组,元素通过指定的分隔符进行分隔
  3. concat() 连接两个或更多的数组,并返回结果。
  4. pop() 删除并返回数组的最后一个元素。
  5. push() 向数组的末尾添加一个或更多元素,并返回新的长度。
  6. unshift() 向数组的开头添加一个或更多元素,并返回新的长度。
  7. shift() 删除并返回数组的第一个元素
  8. reverse() 颠倒数组中元素的顺序。
  9. sort() 对数组的元素进行排序
  10. slice() 返回从原数组中指定开始下标到结束下标之间的项组成的新数组,可以接受一或两个参数,即要返回项的起始和结束位置
  11. splice() 可以实现删除、插入和替换,三个参数
  12. forEach() 循环当前数组,可以修改拿到当前的每一项
  13. map() 返回一个新数组,会按照原始数组元素顺序依次处理元素
  14. every() 判断数组中每一项都是否满足条件,只有所有项都满足条件,才会返回true
  15. some() 判断数组中是否存在满足条件的项,只要有一项满足条件,就会返回true
  16. includes() 用来判断一个数组、字符串是否包含一个指定的值(基本数据类型) 返回true和false
  17. find() 返回匹配的值
  18. findIndex() 返回匹配值位置的索引
  19. indexOf() 从左检查数组中有没有这个数值,可返回某个指定的字符串值(基本数据类型)在字符串、数组中首次出现的位置。
  20. lastIndexOf 从右检查数组中有没有这个数值
  21. reduce() 都会实现迭代数组的所有项(即累加器),然后构建一个最终返回的值
  22. toSource() 返回该对象的源代码。
  23. toString() 把数组转换为字符串,并返回结果。
  24. toLocaleString() 把数组转换为本地数组,并返回结果。
  25. valueOf() 返回数组对象的原始值。

3.不改变原数组的方法

  1. slice() :返回一个新的数组对象,这一对象是一个由beginend(不包括end)选择的数组的浅拷贝。原始数组不会被修改。
  2. concat() :用于合并两个或多个数组。此方法不会改变现有的数组,而是返回一个新数组。
  3. join() :将一个数组(或一个类数组对象)的所有元素连接成一个字符串并返回这个字符串。不会修改原数组。
  4. toString() :返回一个字符串,表示该数组的元素由逗号分隔的字符串。和join()类似,但不会接受任何参数,且不会修改原数组。
  5. map() :创建一个新数组,其结果是该数组中的每个元素是调用一次提供的函数后的返回值。原数组不会被修改。
  6. filter() :创建一个新数组, 其包含通过所提供函数实现的测试的所有元素。原数组不会被修改。
  7. reduce()  和 reduceRight() :对数组中的每个元素执行一个由您提供的reducer函数(升序执行),将其结果汇总为单个返回值。不会修改原数组。
  8. find()  和 findIndex()find 方法返回数组中满足提供的测试函数的第一个元素的值。否则返回undefinedfindIndex 方法返回数组中满足提供的测试函数的第一个元素的索引。如果没有找到,则返回-1。两者都不会修改原数组。
  9. flat()  和 flatMap()flat() 方法会按照一个可指定的深度递归遍历数组,并将所有元素与遍历到的子数组中的元素合并为一个新数组返回。flatMap() 方法首先使用映射函数映射每个元素,然后将结果压缩成一个新数组。两者都不会修改原数组。

4.改变原数组的方法

  1. forEach() :遍历数组中的每一个元素,如果修改元素的值就是修改当前数组的值。
  2. push() :向数组的末尾添加一个或更多元素,并返回新的长度。
  3. pop() :删除并返回数组的最后一个元素。
  4. shift() :删除并返回数组的第一个元素。
  5. unshift() :向数组的开头添加一个或更多元素,并返回新的长度。
  6. splice() :通过删除现有元素和/或添加新元素来更改一个数组的内容。
  7. sort() :对数组的元素进行排序,并返回数组。
  8. reverse() :颠倒数组中元素的顺序,并返回该数组。
  9. fill() :用一个固定值填充一个数组中从起始索引到终止索引内的全部元素。不包括终止索引。
  10. copyWithin() :在当前数组内部,将指定位置的成员复制到其他位置(会覆盖原有成员),然后返回当前数组。