缩短这个if语句的方法

 晨雨心秋-济微路唐姜合 发布于 2023-02-13 15:21
  • php
  • 1 个回答
    • Enumerableany?,all?none?你的朋友们对这种事情

      VALID_COMMANDS = [
        'course analytics',
        'view student averages',
        'report cards',
        'done' ]
      
      if VALID_COMMANDS.any? {|s| command.downcase != s }
      

      在没有看到你的身体的情况下if,我怀疑你对你的组合操作符的感觉是错误的(如果写的,你的条件总是正确的,因为被测试的字符串必须与它测试的值之一不同)如上所述,你'如果命令不等于任何字符串,我会怀疑你要么测试它是否等于其中一个或者没有.

      if VALID_COMMANDS.none? {|s| command.downcase == s }
      

      当块中的测试相等时,include?(foo)相当于any? {|x| x == foo },所以这是none?使用include 的等效测试:

      unless VALID_COMMANDS.include? command.downcase
      

      2023-02-13 15:24 回答
    撰写答案
    今天,你开发时遇到什么问题呢?
    立即提问
    热门标签
    PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
    Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有