简化具有重复结果的嵌套 if/else?

2024-02-29

我正在尝试简化以下内容:

function handleDirection(src) {
  if (src === 'left') {
    if (inverse) {
      tracker--;
    } else {
      tracker++;
    }
  } else {
    if (inverse) {
      tracker++;
    } else {
      tracker--;
    }
  }
}

以减少条件句的数量。这src将是'left' or 'right' always.


您可以查看第一次检查的结果。

这是异或检查。

// typeof inverse === 'boolean'

function handleDirection(src) {
    if (src === 'left' === inverse) {
        tracker--;
    } else {
        tracker++;
    }
}

检查按此顺序计算表达式(src === 'left') === inverse:

src === 'left' === inverse
---- first ---             returns a boolean value
--------- second --------- take result of former check & compairs it with another boolean
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

简化具有重复结果的嵌套 if/else? 的相关文章

  • 在 ExpressJS 中通过管道传送远程文件

    我想读取远程图像并显示它 我可以保存文件 但无法正确显示代码 理想情况下 我只想直接传递文件而不进行处理 不确定是否需要 tmp 文件步骤 此代码不显示任何内容 没有错误 我也尝试了 res pipe response var url ht
  • 将变换值添加到元素上已有的当前变换中?

    假设我有一个div那有translateX and translateY动态添加的值 div class object child0 style width 50px height 50px 我想添加rotateY 20deg 到当前的变换
  • React Native 将样式设置为 State

    我想用backgroundColor of style1作为一种状态 并在函数中改变它change 我怎样才能访问style1 我的观点是调用该函数change从另一个函数 使按钮将其颜色更改为黄色 然后在一段时间后再次将其颜色更改为蓝色
  • 运行 npm install 时出错 Error: 404 Not Found: 7zip-bin@~4.1.0

    当我运行 npm install 时 我看到此错误 3 verbose stack Error 404 Not Found 7zip bin 4 1 0 2293 verbose stack at fetch then res C cygw
  • 在 HTML SELECT 标记中禁用键盘

    我想禁用 HTML SELECT 标记的键盘 以便用户只能使用鼠标来选择选项 我试过了event cancelBubble true on the onkeydown onkeyup and onkeypress没有运气的事件 有任何想法吗
  • javascript获取上周的第一天和最后一天[重复]

    这个问题在这里已经有答案了 我想用 javascript 获取上周的第一天 星期一 和最后一天 星期日 我已经检查过其他主题 但它不起作用 我还需要处理前一周是否是两个不同的月份 我正在使用此代码 但最后一个星期日是 06 03 2014
  • Jquery 动画与 CSS 浮动

    我的代码有问题 宽度似乎可以工作 但浮动没有 这里是 这是一个例子 http jsfiddle net v82ck http jsfiddle net v82ck 问题 悬停时菜单上的浮动属性不会改变 我希望每个菜单元素下方的线在悬停该菜单
  • Chart.js 没有显示在我的视图中

    我有一个使用 angular js 运行的应用程序 我的视图之一应该加载图表 我正在使用 Chart js 但由于某种原因它不起作用 并且我的控制台上没有显示错误 这是我创建图表的函数 scope writeBatteryChart fun
  • Angular 2 最终版本路由器单元测试

    如何使用 karma 和 jasmine 对 Angular 2 0 0 版中的路由器进行单元测试 这是我的旧单元测试在版本 2 0 0 beta 14 中的样子 import it inject injectAsync beforeEac
  • 向 FTP 服务器执行跨域 XMLHTTPREQUEST 的语法是什么?

    我有一个 webDav CORS 插件 可以使用它在 webDav 服务器上 POST PUT GET REMOVE ALLDOCS 文件 我现在想对 FTP 做同样的事情 但我正在努力获取xmlhttprequest 工作语法 我只是收到
  • Backbone-relational 无法实例化两个 RelationalModel 对象

    我正在尝试实现 BackboneRelational 并不断获得 无法实例化多个 Backbone RelationalModel 每种类型都有相同的 ID class App Models User extends Backbone Re
  • 在 NPM 上捆绑并发布客户端 Web 代码

    我制作了一个 JavaScript 文件 假设它的内容是这样的 let myCoolAlert str gt alert str in a different js file SO doesn t allow you to cross fi
  • Node.js 和 Express:异步操作后如何返回响应

    我是 Node js 新手 所以我仍然对异步函数和回调很感兴趣 我现在的难题是如何在异步操作中从文件读取数据后返回响应 我的理解是发送回复的工作方式如下 这对我有用 app get search function req res res s
  • RxJS - 从可观察对象中获取最后 n 个元素

    我想从可观察对象中获取最后 3 个元素 假设我的时间线是这样的 a b c d e f g h i j gt where a b c d e f g h i j are emitted values 每当发出新值时 我想立即获取它 因此它可
  • Firefox OS 后台服务

    我想构建一个应用程序 用户可以通过它输入一些设置 并且应用程序将启动后台服务来根据这些设置执行一些任务 我只想在模拟器中运行应用程序和后台服务 我知道它需要 认证 模式才能运行后台服务 但我现在不考虑在 Firefox Marketplac
  • 错误左值需要作为赋值C++的左操作数

    整个程序基本上只允许用户移动光标 如果用户位于给定的坐标范围 2 2 内 则允许用户键入输入 我刚刚提供了一些我认为足以解决问题的代码 我不知道是什么导致了这个问题 你能解释一下为什么会发生吗 void goToXY int int 创建一
  • 为什么严格模式下不允许使用八进制数字文字(解决方法是什么?)

    为什么八进制数字文字不允许JavaScript 严格模式 https developer mozilla org en docs Web JavaScript Reference Strict mode 有什么害处呢 use strict
  • Safari 的 Javascript 与 document.write 的问题

    我的问题只发生在 Safari 上 IE FF Chrome 和 Opera 都可以完美运行 我正在向 DOM 添加一个对象 与 YouTube 的方式完全相同 具体取决于 ActiveX 或 NPAPI 因此在确定写入对象类型后 我通过以
  • 禁用 Materialise Carousel 上的触摸

    看起来以前没有人问过这个问题 因为我几乎在互联网上寻找一个非常简单的答案 如何禁用在物化轮播上向左 向右滑动的功能 在 Materialize js 添加 编辑 var allowCarouselDrag true value functi
  • Javascript:修改原型不会影响现有实例[重复]

    这个问题在这里已经有答案了 我创建了原型的 2 个实例 更改了原型中的函数 更改反映在两个实例中 很棒 但是 当我通过删除该函数来修改原型时 该函数对于现有实例仍然存在 function A this name cool A prototy

随机推荐

  • Angular2 - 带有语言的路线

    您好 我想使用以下格式的语言创建路线 www domain com lang sometimes Example www domain com en sometimes www domain com de sometimes 是否可以编写类
  • 如何将 React 应用程序捆绑到服务器上的子目录中?

    我有一个在本地主机上开发的 React 应用程序 我想将其复制到服务器上名为 vensa 的子目录中 我的 webpack 配置文件看起来像这样 const ExtractTextPlugin require extract text we
  • 将 null 传递给首选 String 而不是 Object 的方法

    我的程序中遇到了一个问题 我用下面的一个小代码片段澄清了这一问题 谁能解释为什么会发生这种情况 class ObjectnullTest public void printToOut String string System out pri
  • 如何使用纯 Javascript 和文档查询选择器实现 jQuery .on() 函数

    jquery on 函数 http api jquery com on 允许 DOM 事件在将来可能插入的元素上触发 如何使用纯 Javascript 来实现这一点 尤其是mouseenter具有特定类的元素上的事件 无需 jQuery 并
  • 如何复制部分或骨架 h5py 文件

    我对这个问题有几个疑问 我意识到这可能是一篇复杂的文章 可以提供额外的细节 我使用的代码包可以生成大型 h5 文件 source h5 100 Gb 其中几乎所有数据都驻留在 1 个数据集 group2 D 中 我想使用 Python 创建
  • 从 URL 获取 Instagram 用户名 - 使用正则表达式忽略句点

    我已经能够使用正则表达式从 instagram 个人资料 URL 检索用户名 但是一旦达到句号 它就会停止 完整网址 https www instagram com username test uk https www instagram
  • PostgreSQL 如何查找最近 n 分钟内的任何更改

    我正在编写一个同步 PostgreSQL 和 MS SQL 服务器数据库的程序 并在此转换中添加一些更改 对于数百万条记录 需要很长时间 并且服务器负载非常糟糕select 它还需要更多资源来解析未更改的记录并根据 MS SQL 服务器验证
  • 告诉 SBT 将我所有的依赖项收集在一起

    构建 Web 应用程序时 SBT 能够将所有 jar 依赖项收集到 WAR 文件中 是否可以让 SBT 将我在非 Web 应用程序中依赖的所有 jar 放入一个目录中 以便我在运行应用程序时可以轻松地将它们放入我的类路径中 是的 您可以在项
  • 在父子表单无序列表中打印分层数据php?

    我在父子层次结构中的 mysql 表中有数据 例如 msg id parent id msg 1 NULL msg1 2 NULL msg2 3 NULL msg3 4 1 msg1 child1 5 1 msg1 child2 6 3 m
  • 为asp.net中的慢速页面添加实时进度更新

    我正在尝试向我的 c asp net 4 0 应用程序添加一个实时进度报告 以解决加载缓慢的页面 我查看了 UpdatePanel 和 UpdateProgress Ajax 控件 但我认为它们不合适 基本上 当用户单击按钮时 页面会执行许
  • 确定当前粘贴板内容的源应用程序

    AppStore 中的多个 OSX 剪贴板管理器显示了确定复制到剪贴板的内容的源应用程序的能力 我正在编写一些简单的剪贴板观察器 并希望在内容附近显示源应用程序图标 存储在通用 NSPasteboard 中 我想知道如何实现这一目标 据我所
  • ValueError:groupby Pandas 中的“无法从重复轴重新索引”

    我的数据框如下所示 SKU GRP CATG PRD 0 54995 9404000 4040 99999 1 54999 9404000 4040 99999 2 55037 9404000 4040 1556894 3 55148 94
  • 串行端口“关闭”事件永远不会触发

    我正在使用nodeJSSerialPort用于连接计算机端口的包 关于套餐close event here https github com EmergingTechnologyAdvisors node serialport module
  • ptr->你好(); /* 与 */ (*ptr).hello();

    我正在学习 C 指针和 gt 操作员对我来说似乎很奇怪 代替ptr gt hello 一个人可以写 ptr hello 因为它似乎也有效 所以我认为前者只是一种更方便的方法 是这样还是有什么区别 gt 运算符是只是语法糖因为 ptr hel
  • jOOQ fetch 与 fetchResultSet 以及 Kotlin 中的关闭连接

    我使用 Kotlin 与 HikariCP 和 jOOQ 来查询我的数据库 我开始意识到这段代码按预期工作 获取行并随后关闭连接 class CountriesService private val datasource DataSourc
  • 正则表达式-如何在字符第一次出现时停止

    我正在尝试从标签中提取 src 值 到目前为止 我似乎能够提取 src 值和字符串中最后一个引号之间的字符串 String img border 0 src http i bookfinder com about booksellers l
  • matplotlib 桑基图中的连接流程

    我正在使用 matplotlibssankey功能 并且在连接两个流时存在问题 基本上 我只想连接流程Qab rekup到流的末尾Qzu rekup 参见屏幕截图 似乎很容易 但我仍然不知道如何管理它 Here s the screensh
  • 在开发系统上禁用 OutputCache

    我在 ASP net MVC 应用程序中使用 OutputCache 由于使用活动的 OutputCache 进行开发并不是很愉快 因此我想禁用开发系统 本地计算机和开发服务器 上的 OutputCache 做这个的最好方式是什么 这是一本
  • 将 df 转换为单独的观察结果[重复]

    这个问题在这里已经有答案了 我想将 df 从 计数 方法 案例数量 转变为 单独观察 方法 Example df lt dplyr tibble city c a a b b c c sex c 1 0 1 0 1 0 age c 1 2
  • 简化具有重复结果的嵌套 if/else?

    我正在尝试简化以下内容 function handleDirection src if src left if inverse tracker else tracker else if inverse tracker else tracke