火狐体育登入:嘿 Siri本年曩昔多久了?

  一年之计在于春。元旦已过,新春将至,是时分投入到新一年的规划中。为此,无妨用些可量化的办法提示韶

在线订购

  一年之计在于春。元旦已过,新春将至,是时分投入到新一年的规划中。为此,无妨用些可量化的办法提示韶光易逝,鼓励自己爱惜时刻——比方不时算算「本年曩昔了百分之几」。

  当然,这么简略的问题并不需求依靠那些营销号帮咱们做算术;运用自带的便利指令,完全能够做到顺手检查年度百分比,趁便还能画出一个「年度进展条」。

  如上所述,这个便利指令要处理的问题并不困难,但问题是很简略做得繁琐。加上便利指令的操作至今不算特别便利,假如思路不清晰,很简略在过程堆积之后手忙脚乱。

  为此,咱们首要依据预期的输出成果——年度百分比和年度进展条——对该便利指令所需的功用进行分化,能够大致拆分出如下问题:

  关于这个问题,最简略粗犷的办法当然是获取当时日期、结构一个当年 1 月 1 日的日期,然后用「获取时长」的过程求差值。但以上三步其实能够通过一步来完成。这儿的技巧在于,便利指令中的日期变量都是能够自行指定格局的,而且能够在格局表述中将特定的日期部件改为固定值。

  详细而言,咱们将「获取时长」过程的前后两个空位都选为「当时日期」。然后,挑选前一个日期(开端日期),将其「日期格局」改为「自定」,然后在下方输入。其间, 是ISO-8601规范下的「年」变量,这种格局意味着所得成果的年份随实践年份而变,但月和日则固定为 1 月 1 日。后一个日期(完毕日期)坚持不变,即输出当时的年月日。

  接下来要处理的是制作进展条。这儿,考虑到便利指令的有限功用和 iPhone 屏幕的有限空间,咱们选用一个比较简略的制作办法,用十个方块各代表 10% 的进展,现已通过的用实心方块 ,没有通过的用空心方块 。

  这样,问题就转化为怎样获取当时现已过日期占全年日数百分比的十位数。这个数字是几,就需求制作几个实心方块,剩余的都是空心方块。

  留意上面截图中,笔者没有将时长除以全年天数 365,而是除以 10 倍的 36.5。这是因为该除法做完后还触及取整,而便利指令只能操控个位数层面的取整。因而,这儿用 36.5 做除数,然后串接一个「为数字取整」过程即可。

  至于取整办法,咱们挑选比较保存的「一直向下取整」,以防止那种进展才过了 95% 进展条就直接拉满的状况——对自己仍是不要太严厉。

  以本文写成时的日期 2022 年 1 月 4 日为例,它与本年第一天的天数差为 3 天,将这个数值除以 得到的成果是.08,因而需求的实心方块是个——还有大把韶光能够浪费。假定韶光穿越到 2022 年 11 月 14 日,那么间隔年头 307 天,除以 36.5 的成果是8.41,因而需求的实心方块是8个。

  对此,网上现有处理方案中,许多运用层层嵌套 if 句子的办法,依据上一步核算的除法成果区间,别离输出不同数量的是非方块,既繁琐又低效。

  这儿,咱们能够打开幻想的翅膀:留意到10 的 n 次幂中刚好有 n 个数字 0;换句话说,把这儿的 n 换成上一步除法取整的成果,算出来有多少个 0,就需求多少个实心方块。

  落实到操作中,只需直接用「文本替换」功用把成果中的 0 悉数替换为实心方块,就完成了「现已过」部分进展条的制作。

  「未通过」部分的空心方块怎样处理呢?当然能够再算一遍当年剩余日期的百分比,然后依样画葫芦做除法、幂方核算和文本替换,但那仍是麻烦了。留意到,咱们需求的输出成果中:

  因而,只需把最多或许呈现的空心方块(10 个)一股脑画在实心方块的后边,然后从第一个方块开端截取十个字符,便是咱们需求的制作成果。

  而且,第 2 部分——咱们需求的 10 个方块——外侧的括号,将该部分的匹配成果捕获为一个分组。因为该表达式中只要一对括号,这个分组就可用 来引证。

  两个进展条色块都处理好之后,接下来便是汇总信息输出了。但在此之前,还需求先把之前核算的年度占比化为百分比,为此,运用「格局化数字」操作取到第一步核算成果的小数点后两位、再乘以 10 即可。

  到此为止,核算过程都现已完成了,得到了年度进展色条块和年度百分比。接下来就要兼并数据并输出显现了。

  这儿,运用一个「文本」操作汇总数据,「日期之间的时长」和「进展色块条」运用魔法变量(Magic Variable)引证。最终还能够抖个机伶,添加一句爱惜时刻的名言警句。

  最终,运用「显现提示」过程将成果输出。这儿之所以不选用相似的「显现告诉」过程,是考虑到需求输出的内容比较长,而「显现告诉」存在 256 个字符的长度约束,不适合吟诗作赋,故改用空间更灵敏的「显现提示」。此处的标题还能够引证一下「当时日期」变量,运用自定格局的默认值。


相关标签:
    相关产品
    地区产品 / city
      在线客服
      火狐体育网官方下载

      热线电话

      13930904978

      上班时间

      周一到周五

      公司电话

      0319-5536156

      二维码
      线