【问题标题】:What does this function do and How to rewrite without the 'with' statement - Javascript [closed]这个函数有什么作用以及如何在没有'with'语句的情况下重写 - Javascript [关闭]
【发布时间】:2012-08-23 05:25:58
【问题描述】:

Javascript:

function ValidDate(y, m, d)
{ // m = 0..11 ; y m d integers, y!=0
  with (new Date(y, m, d))
    return (getMonth()==m && getDate()==d); /* was y, m */
}

【问题讨论】:

    标签: javascript with-statement


    【解决方案1】:

    简单:

    function ValidDate(y, m, d) {
      var date = new Date(y, m, d);
      return date.getMonth() == m && date.getDate() == d;
    }
    

    【讨论】:

    • var date = new Date(y, m, d)) 应该是 var date = new Date(y, m, d);我相信否则这行得通。
    • @JoshuaFricke:感谢编辑,C&P 错误。也为您的回答 +1 :-)。
    【解决方案2】:

    with 使得this 范围是with 中的语句,因此您不必执行任何.functionName(...)

    你可以做什么:

    function ValidDate(y, m, d)
    { // m = 0..11 ; y m d integers, y!=0
        var date = new Date(y, m, d);
        return (date.getMonth()==m && date.getDate()==d); /* was y, m */
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-07-01
      • 2013-01-23
      • 2015-02-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多