【问题标题】:Using ternary operator in JavaScript to invoke two functions在 JavaScript 中使用三元运算符来调用两个函数
【发布时间】:2010-12-11 22:04:57
【问题描述】:

这可以在 JavaScript 中完成吗?

type == 1 ? function1() : function2();

【问题讨论】:

  • 你测试了吗? :)
  • 你意识到你可以在浏览器的地址栏中输入javascript来测试它吗?
  • 自己试试吧。粘贴:javascript:void(true ? alert('t') : alert('f'))
  • 我只是在这么多年后回顾这个问题,在将它发布到这里之前我没有在控制台上测试它似乎很愚蠢。我想我当时被控制台吓到了。
  • 来自标题的问题,解决方法:stackoverflow.com/questions/6678411/…

标签: javascript ternary-operator


【解决方案1】:

是的,这是有效的代码。它将调用 either function1() function2(),但不会同时调用两者 - 取决于 type 的值。

【讨论】:

  • +1 当 Jon Skeet 和 Ned Batchelder 回答 JavaScript 问题时,这一定是缓慢的一天! :)
  • 无论如何都要达到那个代表上限:D
  • 它是有效的,但是当以这种方式使用三元运算符时,JSHint 会给出一个warning。要禁用警告,您应该在 .jshintrc 文件中设置 expr: true
【解决方案2】:

它不会调用两个函数。它将调用您的两个函数之一。

【讨论】:

    猜你喜欢
    • 2018-12-04
    • 1970-01-01
    • 2019-07-15
    • 2020-08-02
    • 2017-01-17
    • 2021-09-30
    • 2016-11-21
    • 2022-11-03
    • 2021-07-14
    相关资源
    最近更新 更多