微信小程序——for与foreach

这篇具有很好参考价值的文章主要介绍了微信小程序——for与foreach。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、for语句

1、示例语法

2、示例代码

二、foreach语句

1、使用方法

2、多层嵌套

总结


        在微信小程序的开发之中,循环是我们不可避免的会遇到的东西,其中呢,我们使用最多的就是for语句和foreach语句了,今天我们来详细了解一下这两种语句的具体使用方法吧。

一、for语句

1、示例语法

for (语句; 语句; 语句)
  语句;

for (语句; 语句; 语句) {
  代码块;
}

其支持使用break、continue 关键词。

2、示例代码

for (var i = 0; i < 3; ++i) {
  console.log(i);
  if( i >= 1) break;
}

输出:

0
1

for语句的使用方法大致就是这样,各种编程语言的for循环语句都是一样的,所以我们就不做过多的讲述了,这里只是给一个简单的示范。

二、foreach语句

1、使用方法

allArr.forEach((item:any) => {
      console.log(item);
    });

此处allArr为你的数组,item为你的这个数组里面每一个元素的替代值,例如:allArr = [{1},{2},{3},{4}],则item分别为{1}、{2}、{3}、{4},然后在后面的{}则可以对数据进行处理。

2、多层嵌套

foreach作为一种循环语句,嵌套自然是每一个循环语句都要掌握的知识。

 /**
   * 处理数组
   */
  transformData(arrs: any, weekNumber: number, cache: any) {
    let professionArr = cache as any;
    let d = 0;
    // 创建新的数组
    let result: { item: any[]; }[] = [];
    // 初始化每一天的课程数组
    for (let i = 0; i < 7; i++) {
      let dayObj = {
        day: ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'][i],
        item: new Array(6) // 创建长度为6的课程数组
      };
      result.push(dayObj);
    }
    arrs.forEach((arr: any) => {
      let professionName = professionArr[d].zy;
      // 获取指定周数的课程数据
      let weekData = arr.week[weekNumber - 1].data;
      d++;
      // 遍历课程数据,将课程安排到新数组中对应的位置
      weekData.forEach((dayObj: { item: any; day: string; }) => {
        let myItems = dayObj.item;
        let dayOfWeek = ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'].indexOf(dayObj.day);//查找对应的日期
        let items: { num: any[]; zy: any; }[] = [];
        myItems.forEach((item: any) => {
          let num = item.num;
          if (num.length > 2) {
            let arr = num;
            for (let i = 0; i < num.length / 2; i++) {
              let myArr: any[] = [];
              myArr.push(arr[i * 2]);
              myArr.push(arr[i * 2 + 1]);
              let newItem = { ...item }; // 创建新的对象并复制属性值
              newItem.num = myArr;
              items.push(newItem);
            }
          } else {
            items.push(item);
          }
        });
        items.forEach((arrs: { num: any[]; zy: any; }) => {
          let startTime = arrs.num[0];
          let endTime = arrs.num[1];
          //将专业加到课程之中
          let zy = professionName;
          arrs.zy = zy;
          // 处理课程重叠
          for (let i = (startTime - 1) / 2; i <= (startTime - 1) / 2 + (endTime - startTime) / 2; i++) {
            if (!result[dayOfWeek].item[i]) {
              // 当前时间段没有安排课程,直接放置
              result[dayOfWeek].item[i] = {
                mergedItem: [result[dayOfWeek].item[i], arrs], // 重叠的课程的数组
              };
            } else {
              // 当前时间段有已安排的课程,处理重叠逻辑(例如合并、拆分等)
              result[dayOfWeek].item[i].mergedItem.push(arrs)//向其中推一个
            }
          }
        });
      });
    });
    return result;
  },

在此处我们可以看到我是使用了四个foreach语句对我们的数组进行了处理,其中就存在着foreach语句的嵌套。

总结

        就小编个人写小程序的代码来看的话,个人还是在处理数组的时候更喜欢foreach语句一些,它能给到开发者的根据小编的感觉来说,比for语句更加的便捷一些,开发者可以通过自定义的名字直接拿到数据,不需要像for语句中使用for循环中的比如:i,之类的数字来去到数组里面拿数据,当然这是小编自己的总结感受了,希望和各位一起变强呀!微信小程序foreach遍历,微信小程序,微信小程序,小程序文章来源地址https://www.toymoban.com/news/detail-692901.html

到了这里,关于微信小程序——for与foreach的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序中遍历对象

    今天在写小程序的时候,遇见一个需求,当用户下单时,生成的订单中可能会存在过期或者不能购买的产品,后端返回的是一个对象:(产品id+错误码), 所以就得循环返回的对象,找出对应的商品 一、 先定义对象数据 二:执行遍历方法:

    2024年02月14日
    浏览(35)
  • 微信小程序自动化测试实战,支持录制回放、智能遍历

      ​为了满足小程序性能、功能等方面的测试需求,微信团队上线 小程序云测服务 ,提供丰富的自动化测试能力。其中 智能化 Monkey 服务 凭借着零代码、低成本的优势吸引不少开发者使用。 在服务使用过程中,我们发现开发者有更多的进阶需求: 先完成指定操作,例如登

    2024年02月03日
    浏览(49)
  • 微信小程序和 Vue 中的遍历循环和列表渲染有一些区别。

    在微信小程序中,我们可以使用 wx:for 指令来进行遍历循环,例如: 这里的 items 是一个数组,wx:for 指令会遍历这个数组,并将数组中的每个元素赋值给 item 变量,然后在模板中使用 {{item}} 来显示每个元素的值。wx:key 属性用于指定每个元素的唯一标识符,以便在更新列表时能

    2024年02月09日
    浏览(40)
  • 微信小程序-for循环

    通过wx:for可以根据指定的数组,循环渲染重复的组件结构,语法示例如下: 默认情况下,当前的循环项的索引用index表示(内置的),当前的循环项用item表示。

    2024年02月15日
    浏览(78)
  • 微信小程序for循环嵌套

    wx:for-item=“pro” pro 自定义循环体参数

    2024年04月26日
    浏览(37)
  • 【微信小程序】列表渲染wx:for

    🏆今日学习目标:第十二期——列表渲染wx:for 😃创作者:颜颜yan_ ✨个人主页:颜颜yan_的个人主页 ⏰预计时间:20分钟 🎉专栏系列:我的第一个微信小程序 哈喽大家好,本期是微信小程序专栏第十二期,本期我们将学习列表渲染wx:for。 注意:每期内容是连载呢,建议大家

    2024年02月08日
    浏览(56)
  • 微信小程序如何循环控制一行显示几个wx:for

    正如上图所显示的一样,我们改如何控制一行显示几个图形呢? 首先第一种方法,数量少的可以自己一行一行的写,但是当数据很多的时候呢? 这时候就需要我们区使用循环进行代码的编写。废话不多数,直接写代码。 .demo-item{ width: 40%; } .demo-item .screen-data{ padding: 10rpx; te

    2024年02月09日
    浏览(52)
  • 微信小程序wx:for 的使用以及wx:key绑定

    wx:for基本使用 wx:for-item和wx:for-index重新命名item和index wx:key两种绑定方式以及注意事项 wx:for基本使用 业务层数据 视图层 wx:for遍历时候每一项名称为 item 每一项索引名称为 index wx:for-item和wx:for-index实现item和index重命名 wx:for-item=\\\"str\\\" 将原来名称 item 修改成 str wx:for-index=\\\"i 将原来

    2024年02月11日
    浏览(79)
  • 微信小程序的条件判断wx:if、wx:elif以及for循环wx:for

    微信小程序中的条件判断与vue的v-if、v-else语法相似,其语法格式为: 直接实战: 官方文档是这么定义的: **重点1:默认数组当前项的变量名为:item;默认数组当前项的下标变量名为index; **重点2:如果不想使用默认的名:按照以下操作自定义变量名 本人习惯使用默认,实

    2024年02月14日
    浏览(47)
  • 【微信小程序】-- WXML 模板语法 - 列表渲染 -- wx:for & wx:key(十二)

    💌 所属专栏:【微信小程序开发教程】 😀 作  者:我是夜阑的狗🐶 🚀 个人简介:一个正在努力学技术的CV工程师,专注基础和实战分享 ,欢迎咨询! 💖 欢迎大家:这里是CSDN,我总结知识的地方,喜欢的话请三连,有问题请私信 😘 😘 😘   大家好,又见面了,

    2024年02月12日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包