计算数组中的特定元素

时间:2017-02-03 17:05:44

标签: javascript arrays

我尝试制作一个脚本,从一个完整的工作表中获取一行日期,将其转换为数组并计算特定日期。

除了“计算具体日期”部分外,我设法做了所有事情。

数组中的日期如下所示:

Fri Jan 27 2017 00:00:00 GMT+0100 (MEZ)

arry:

Fri Jan 27 2017 00:00:00 GMT+0100 (MEZ),Wed Jan 11 2017 00:00:00 GMT+0100 (MEZ),Wed Jan 11 2017 00:00:00 GMT+0100 (MEZ),Wed Jan 11 2017 00:00:00 GMT+0100 (MEZ),Mon Jan 02 2017 00:00:00 GMT+0100 (MEZ),,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,

想要的输出:(“2017年1月11日星期三00:00:00 GMT + 0100(MEZ)”

3

2 个答案:

答案 0 :(得分:1)



var array = ["Fri Jan 27 2017 00:00:00 GMT+0100 (MEZ)", "Wed Jan 11 2017 00:00:00 GMT+0100 (MEZ)", "Wed Jan 11 2017 00:00:00 GMT+0100 (MEZ)", "Wed Jan 11 2017 00:00:00 GMT+0100 (MEZ)", "Mon Jan 02 2017 00:00:00 GMT+0100 (MEZ)"];

var dateToCount = "Wed Jan 11 2017 00:00:00 GMT+0100 (MEZ)";

var count = array.reduce(function (a, d) {
    return d == dateToCount ? ++a : a;
}, 0);

console.log(count);




注意:如果您可能有小写或其他形式的日期,并且想要计算这些日期,那么就像这样解析日期:

var dateToCount = Date.parse("Wed Jan 11 2017 00:00:00 GMT+0100 (MEZ)");
var count = array.reduce(function (a, d) {
    return Date.parse(d) == dateToCount ? ++a : a;
}, 0);

答案 1 :(得分:0)

如果您有这样的字符串数组:

carousel_6

使用2个代码串;

var arr = ["Fri Jan 27 2017 00:00:00 GMT+0100 (MEZ)", 
           "Wed Jan 11 2017 00:00:00 GMT+0100 (MEZ)", 
           "Wed Jan 11 2017 00:00:00 GMT+0100 (MEZ)", 
           "Wed Jan 11 2017 00:00:00 GMT+0100 (MEZ)", 
           "Mon Jan 02 2017 00:00:00 GMT+0100 (MEZ)"];`

只需阅读Date对象的文档:

日期对象本身:http://www.w3schools.com/jsref/jsref_obj_date.asp

Date.getDay()方法:http://www.w3schools.com/jsref/jsref_getday.asp

相关问题