美文网首页
从for循环到forEach,再到for...of,再到loda

从for循环到forEach,再到for...of,再到loda

作者: 故林青衫 | 来源:发表于2018-07-17 16:39 被阅读0次

1.for循环与forEach,比较简单的操作就不贴代码了,唯一不同的在于for循环内部相应break等中断操作,forEach不支持,
2.for...of,基于es6的新方法,完美支持break等中断循环操作,

for (let item of CityDataJson) {
        if (nameId == item.id) {
            for (let cityList of item.city) {
                if (cityId == cityList.id) {
                    for (let areaList of cityList.area) {
                        if (areaId == areaList.id) {
                            this.setState({
                                provinceId: CityDataJson[preventIndex].id,
                                provinceDesc: CityDataJson[preventIndex].name,
                                cityId: cityList[cityIndex].id,
                                cityDesc: cityList[cityIndex].name,
                                areaId: areaList[areaIndex].id,
                                areaDesc: areaList[areaIndex].name
                            });
                            break;
                        }
                    }
                    break;
                }
            }
            break;
        }
    }

3.基于lodash的findIndex方法,快速找到对应数据下标,代码如下;

   let preventIndex = findIndex(CityDataJson, ['id', nameId]),
        cityList = CityDataJson[preventIndex].city,
        cityIndex = findIndex(cityList, ['id', cityId]),
        areaList = cityList[cityIndex].area,
        areaIndex = findIndex(areaList, ['id', areaId]);
    console.log(cityIndex, cityId);
    this.setState({
        provinceId: CityDataJson[preventIndex].id,
        provinceDesc: CityDataJson[preventIndex].name,
        cityId: cityList[cityIndex].id,
        cityDesc: cityList[cityIndex].name,
        areaId: areaList[areaIndex].id,
        areaDesc: areaList[areaIndex].name
    });

相关文章

  • 从for循环到forEach,再到for...of,再到loda

    1.for循环与forEach,比较简单的操作就不贴代码了,唯一不同的在于for循环内部相应break等中断操作,...

  • 遍历数组的方式

    for循环 for...in for...of forEach方法 ps:没有赋值的元素不会在forEach中循环...

  • piece by piece 07-28

    遍历JS中,除了for循环(for, for...of),其他的遍历(forEach, map, filter, ...

  • for...of循环(数组)

    for...of循环可以代替数组实例的forEach方法 JavaScript 原有的for...in循环,只能获...

  • js 循环

    js中forEach,for in,for of循环的用法 js的 for...in 和 for...of的用法 ...

  • ES6 数组转对象

    测试数据 析构函数 累加器 循环 forEach for...of for map ...

  • 时间久了你会发现走过的城市住过的酒店越来越没什么两样?

    从哈尔滨到呼市再到乌市,从北京到武汉到广州再到海口,从上海到郑州到西安再到西宁,从拉萨到重庆到成都到贵阳再到昆明,...

  • javascript数组和对象的遍历、过滤

    遍历数组的方法 1、常见的for循环: 2、forEach和map: 3、for...of 遍历对象 1、for ...

  • 2021-06-13

    从深夜到白昼,再到深夜,再到白昼…… 从寒冬到炎夏,再到寒冬,再到炎夏…… 从晨光熹微,到夕阳红透半边天,从南到北...

  • 从A到B再到C

    今天我们迎来了“玉敏1+1”的处女秀,恐龙带着另一个小伙伴一起前来,而另一边的是方糖新上任的COO学涛。 还没等我...

网友评论

      本文标题:从for循环到forEach,再到for...of,再到loda

      本文链接:https://www.haomeiwen.com/subject/cblgpftx.html