小编max*_*nan的帖子

JS Date对象 - 没有时间返回人类可读的字符串

我正在使用这种格式的一串数据:"mm-dd-yy".我以这种方式将其转换为Date对象:

var dateData, dateObject, dateReadable, dateSplit, year, month, day;

dateData = "07-21-14"; //For example

dateSplit = dateData.split('-');

month = dateSplit[0] - 1;
day = dateSplit[1];
year = 20 + dateSplit[2];

dateObject = new Date(year, month, day);

dateReadable = dateObject.toUTCString(); //Returns Mon, 21 Jul 2014 04:00:00 GMT
Run Code Online (Sandbox Code Playgroud)

我想在没有时间的情况下(格林尼治标准时间04:00:00)返回日期(星期一,2014年7月21日).是否有不同的方法可以这样做?还是一种.toUTCString()无需时间回电日期的方式?

javascript date

21
推荐指数
1
解决办法
3万
查看次数

setTimeout传递了命名函数与匿名函数

MDN页面上,window.setTimeout我找到了一个将命名函数传递给window.setTimeout的示例:

var timeoutID;

function delayedAlert() {
  timeoutID = window.setTimeout(slowAlert, 2000);
}

function slowAlert() {
  alert("That was really slow!");
}

function clearAlert() {
  window.clearTimeout(timeoutID);
}
Run Code Online (Sandbox Code Playgroud)

在我维护的代码中,我遇到了这个示例的等价物,其中声明了一个匿名函数,因为它被传递给window.setTimeout:

var timeoutID;

function delayedAlert() {
  timeoutID = window.setTimeout(function(){
    alert("That was really slow!");
  }, 2000);
}

function clearAlert() {
  window.clearTimeout(timeoutID);
}
Run Code Online (Sandbox Code Playgroud)

这两种延迟警报的方式之间是否有重要区别?我比我正在使用的代码更信任MDN,所以我想理解为什么MDN使用单独的函数声明来表达他们的示例.

编辑:谢谢@TravisJ @jfriend00 @PlatinumAzure的明确和有用的答案.

javascript

8
推荐指数
1
解决办法
2926
查看次数

当它说当前分支是最新的(即使不是最新的)时,如何重新计算呢?

我重新设置了分支的基础,该分支的效果是在我自己的基础上添加了一些提交。然后意识到我忘记了压缩一些提交,所以很难重新设置并压缩。现在,我需要把那些提交带回来。但是重新调配告诉我当前分支是最新的,即使不是。有没有办法解决这个问题?

编辑:

有两个分支:a和b。两者都是从master分支出来的。两者都是最新的大师。分支a有一些更改。我也希望分支b也有这些更改。我将分支a重新定位到b。最新的提交来自分支a。我的意图是在提交之前压扁这三个提交。我在最近一次提交之前硬重置为。然后我挤了。现在,我想以一种在将分支b合并到master时不会引起头痛的方式找回最新提交。

我已经尝试过refloggit reset --hard HEAD@{n}但存在相同的问题:当前分支是最新的。

git rebase

5
推荐指数
2
解决办法
3110
查看次数

功能编程构造用于组成身份和副作用

函数式编程是否具有此逻辑的标准结构?

const passAround = (f) => (x) => {
  f(x);

  return x;
};
Run Code Online (Sandbox Code Playgroud)

这使我能够组合具有副作用且没有返回值的函数,例如console.log.它不像任务,因为我不想表示副作用的状态.

javascript functional-programming side-effects

5
推荐指数
2
解决办法
224
查看次数

如何反向遍历树结构

我将 XML 解析为 JSON。我想通过遍历 JSON 并调用React.createElement每个节点来构建 React 组件树。第三个参数React.createElement是 React 子元素的数组。这意味着我必须沿着树走到叶节点,首先创建这些 React 元素,然后返回每个分支。

树结构上的简单递归迭代非常简单。我不确定如何说“好吧,现在您位于叶节点,请返回”。有这方面的技术吗?

样本数据:

{  
   "section":{  
      "attrs":{  
         "class":"foo",
         "data-foo":"foo"
      },
      "#name":"section",
      "children":[  
         {  
            "attrs":{  
               "class":"region-1"
            },
            "#name":"p",
            "children":[  
               {  
                  "attrs":{  
                     "data-children":"true"
                  },
                  "#name":"span"
               }
            ],
            "span":[  
               {  
                  "attrs":{  
                     "data-children":"true"
                  }
               }
            ]
         },
         {  
            "attrs":{  
               "class":"second"
            },
            "#name":"div"
         }
      ],
      "p":[  
         {  
            "attrs":{  
               "class":"region-1"
            },
            "children":[  
               {  
                  "attrs":{  
                     "data-children":"true"
                  },
                  "#name":"span"
               }
            ],
            "span":[  
               {  
                  "attrs":{  
                     "data-children":"true"
                  }
               }
            ]
         }
      ],
      "div":[  
         {  
            "attrs":{  
               "class":"second" …
Run Code Online (Sandbox Code Playgroud)

javascript tree-traversal reactjs

4
推荐指数
1
解决办法
5673
查看次数

git status 简写参考

是否有所有状态符号(例如ADMM??)输出的参考git status --porcelain?我正在解析此输出,并需要确保我已涵盖所有排列。通读 git 源代码,看起来输出是动态组装的,而不是模板化的,而且我对找到每个边缘情况的能力没有信心。

这是我所拥有的:

??: 'untracked',
A: 'staged',
AD: 'staged_deleted',
AM: 'staged_modified',
D: 'deleted',
M: 'modified',
MM: 'staged_modified',
R: 'renamed',
UU: 'conflicted'
Run Code Online (Sandbox Code Playgroud)

git

4
推荐指数
1
解决办法
1620
查看次数

jQuery.validate和隐藏的输入

我有一个带有伪选择元素的表单.伪选择元素是下拉菜单.单击其中一个下拉项时,会为隐藏的输入指定一个分配给该项的值.我正在使用jQuery.validate来验证表单.一个简单的验证规则绑定到隐藏的输入.如果输入没有值,则隐藏输入和伪选择将被赋予错误类,并显示错误消息.

我的问题是更改隐藏输入的值不会触发更改,键入或模糊事件.如果将错误状态应用于隐藏输入,则在输入被赋予有效值之后该状态仍然存在.只有在再次提交表单时才会正确验证输入.

由于jQuery.validate允许对隐藏输入进行验证,我想知道是否存在处理此问题的配置或方法.

编辑:

$form.validate({
    ignore: false,
    rules: {
        'firstname': 'required',
        'lastname': 'required',
        'org': 'required',
        'role': 'required',
        'email': {
            required: true,
            email: true
        }
    },
    messages: {
        'firstname': 'Please enter your first name',
        'lastname': 'Please enter your last name',
        'org': 'Please enter your organization',
        'role': 'Please select your role',
        'email': 'Please enter your email'
    },
    errorPlacement: function(error, element) {
        var $errMessage = $('.js-err-message');

        $errMessage.removeClass('js-hidden'); 

        $(error).each(function(){
            $errMessage.append(error);

            if (element.is('#role-input')) {
                $('.pseudo-select').addClass('mad-error');
            }
        });

    }
});
Run Code Online (Sandbox Code Playgroud)

javascript jquery jquery-validate

3
推荐指数
1
解决办法
4948
查看次数