在PHP中,您可以轻松地将英文文本日期时间描述转换为strtotime()
的正确日期。
Javascript中有类似内容吗?
答案 0 :(得分:60)
是的,确实如此。所有主流浏览器都支持它:
var ts = Date.parse("date string");
唯一的区别是此函数返回毫秒而不是秒,因此您需要将结果除以1000.
答案 1 :(得分:47)
我找到this article并尝试了教程。基本上,您可以使用日期构造函数来解析日期,然后从getTime()
方法中获取秒数
var d=new Date("October 13, 1975 11:13:00");
document.write(d.getTime() + " milliseconds since 1970/01/01");
这有用吗?
答案 2 :(得分:30)
在JavaScript中查看PHP的strtotime()的this实现!
我发现它对于我投入的所有内容都与PHP完全相同。
更新:此版本1.0.2的功能无法处理这种情况:
'2007:07:20 20:52:45'
(注意年份和月份的:
分隔符)
现在可以作为npm
模块使用!只需npm install locutus
,然后在您的来源中:
var strtotime = require('locutus/php/datetime/strtotime');
答案 3 :(得分:4)
我嫉妒php中的strtotime(),但是我在javascript中使用片刻。没有像php那样甜蜜,但也巧妙地诀窍。
// first day of the month
var firstDayThisMonth = moment(firstDayThisMonth).startOf('month').toDate();
使用subtract()
和add()
与endOf()
和startOf()
来回来回使用
// last day of previous month
var yesterMonthLastDay = moment(yesterMonthLastDay).subtract(1,'months').endOf('month').toDate();
答案 4 :(得分:0)
很少有模块提供类似的行为,但不完全像PHP的strtotime。在我发现date-util的几个替代方案中,效果最好。
答案 5 :(得分:0)
也许您可以利用以下示例函数:
function strtotime(date, addTime){
let generatedTime=date.getTime();
if(addTime.seconds) generatedTime+=1000*addTime.seconds; //check for additional seconds
if(addTime.minutes) generatedTime+=1000*60*addTime.minutes;//check for additional minutes
if(addTime.hours) generatedTime+=1000*60*60*addTime.hours;//check for additional hours
return new Date(generatedTime);
}
let futureDate = strtotime(new Date(), {
hours: 1, //Adding one hour
minutes: 45 //Adding fourty five minutes
});
document.body.innerHTML = futureDate;
`
答案 6 :(得分:-1)
浏览器支持解析字符串is inconsistent。因为没有关于应该支持哪种格式的规范,所以在某些浏览器中有效的功能在其他浏览器中不起作用。
尝试Moment.js - 它为parsing dates提供了跨浏览器功能:
var timestamp = moment("2013-02-08 09:30:26.123");
console.log(timestamp.milliseconds()); // return timestamp in milliseconds
console.log(timestamp.second()); // return timestamp in seconds
答案 7 :(得分:-1)
>>> x = np.random.random((2,3,4))
>>> x
array([[[ 0.87412737, 0.11069105, 0.86951092, 0.74895912],
[ 0.48237622, 0.67502597, 0.11935148, 0.44133397],
[ 0.65169681, 0.21843482, 0.52877862, 0.72662927]],
[[ 0.48979028, 0.97103611, 0.36459645, 0.80723839],
[ 0.90467511, 0.79118429, 0.31371856, 0.99443492],
[ 0.96329039, 0.59534491, 0.15071331, 0.52409446]]])
>>> y = np.argmax(x, axis=1)
>>> y
array([[0, 1, 0, 0],
[2, 0, 0, 1]])
>>> i, j = np.ogrid[:2,:4]
>>> x[i ,y, j]
array([[ 0.87412737, 0.67502597, 0.86951092, 0.74895912],
[ 0.96329039, 0.97103611, 0.36459645, 0.99443492]])

var strdate = new Date('Tue Feb 07 2017 12:51:48 GMT+0200 (Türkiye Standart Saati)');
var date = moment(strdate).format('DD.MM.YYYY');
$("#result").text(date); //07.02.2017