• Es6数组扩展方法和对象扩展方法


    一、数组扩展方法

    1.forEach数组循环方法

    (利用forEach方法输出数组的元素的值以及索引)(forEach方法具有两个参数,第一个是元素的值,)

    1. var arr = [1, 2, 3, 4]
    2. //forEach 循环
    3. arr.forEach(
    4. (ele, index) => {
    5. console.log(ele, index);
    6. // ele 数值 index索引
    7. }
    8. )

    2.fliter筛选方法

    利用fliter函数筛选出age大于22的,筛选出满足条件的成为新的数组

    1. var arr3 = [{
    2. name: 'zs',
    3. age: 20
    4. },
    5. {
    6. name: 'xtx',
    7. age: 24
    8. },
    9. {
    10. name: 'asx'
    11. , age: 22
    12. }]
    13. var arr4 = arr3.filter(
    14. (ele) => {
    15. return ele.age > 22;
    16. }
    17. )
    18. console.log(arr4);

    3.map 数组映射方法

    利用已有数组输出每个元素都变成二倍的数组,利用map函数进行映射

    1. var arr5 = arr.map(
    2. (ele) => {
    3. return ele * 2;
    4. }
    5. )
    6. console.log(arr5);

    4.some 函数

    判断一个数组中是否具有满足条件的元素,如果有一个满足条件,那么some函数就会返回一个true,如果都不满足,就返回false

    1. var ages = [3, 10, 18, 20];
    2. var result = ages.some(function (age) {
    3. return age >= 18;
    4. })
    5. console.log(result);

    4.every函数

    判断一个数组中是否所有元素都满足条件,如果全部满足条件返回true,只要有一个不满足条件,就会返回false

    1. var result1 = ages.every(function (age) {
    2. return age >= 18;
    3. })
    4. console.log(result1);

    5.reduce函数

    reduce函数用来做累积操作

    reduce((total,num)=>{return 表达式;}),后边的表达式是与total和num相关的,tptal*num就会表示累乘操作,结果为24,如果表达式是+就是累积操作结果为10

    1. var number = [1, 2, 3, 4];
    2. var total = number.reduce((total, num) => {
    3. return total*num;
    4. })
    5. console.log(total);

    6.find和findIndex函数

    find  找到第一个符合条件的    findIndex  返回第一个符合条件的索引

    1. var s = number.find((ele) => {
    2. return ele < 20;
    3. })
    4. console.log(s);

    7inclued函数

    包含返回true 没有返回false

    1. var arr8=[5,1,3,2,6];
    2. console.log(arr8.includes(8));

    8.for  of方法
    number 后边可以.values() 数值 | .keys() 索引  |.entries() 返回一个数组(包含索引和数值)
    index  ele(index,ele)  index索引

    1. for (ele of number.keys()) {
    2. console.log(ele);//可以进行解构赋值
    3. }

    9.  Array.from函数可以把类数组转换为数组,之前的扩展运算符...也可以进行转换

    1. var ali=document.getElementsByTagName('li');
    2. var arr=[...ali];
    3. var arr1=Array.from(ali);
    4. console.log(arr1);

    二、对象的扩展方法

    1. 当属姓名和属性值同名时可以简写,即如下代码中对象中的name和age代码应为:age:age,name:name

    1. var name = 'lisi';
    2. var age = 19;
    3. var obj = {
    4. name,
    5. age,
    6. eat(){
    7. ()=>{
    8. }
    9. }
    10. }

    2.assign方法合并对象(...扩展运算符也可以,即{...obj3,...obj4})

    合并规则:后一个与前一个重复的属性 后一个会覆盖前一个 后一个没有的前一个不变 前一个没有的后一个直接加入

    1. //合并对象
    2. var obj3 ={
    3. name:'zs',
    4. age:20
    5. }
    6. var obj4={
    7. name:'ass',
    8. age:28
    9. ,sca:'ask'
    10. }
    11. var arr5=Object.assign(obj3,obj4);

    3.in方法   用来判断对象中是否包含某个属性

    key用来访问

    1. console.log(name in obj4);
    2. for(key in obj3){
    3. console.log(obj3[key]);
    4. }

  • 相关阅读:
    Java——数据类型转换:自动类型转换&强制类型转换
    游戏被攻击了怎么办
    【优化选址】基于matlab遗传算法求解物流配送中心选址【含Matlab源码 1917期】
    Elasticsearch:为具有许多 and/or 高频术语的 top-k 查询带来加速
    2022年C等级考试九月二级真题B:全在其中
    DOM之事件代理(二)
    持续性输出,继续推荐5款好用的软件
    ES12 学习
    Go 语言常见的 ORM 框架
    力扣(LeetCode)304. 二维区域和检索 - 矩阵不可变(2022.11.01)
  • 原文地址:https://blog.csdn.net/m0_72694993/article/details/126838958