我有一个这种格式的字符串:
var dateTime = "06-17-2015 14:24:36"
Run Code Online (Sandbox Code Playgroud)
我正在使用moment.js而我正在尝试将其转换为YYYY-MM-DD HH:mm:ss- > 2015-06-17 14:24:36.
我试过这种方法
dateTime = moment( dateTime, 'MM-DD-YYYY HH:mm:ss',true).format("YYYY-MM-DD HH:mm:ss");
Run Code Online (Sandbox Code Playgroud)
但是将dateTime作为无效日期.
我有这个问题......我没有发现任何类似的东西,似乎很奇怪没有人用moment.js验证时间这个问题.
moment('03:55', 'HH:mm').isValid(); //true
moment('03:55jojojo', 'HH:mm').isValid(); //true
moment('03:55jojojo', 'HH:mm',true).isValid(); //true
Run Code Online (Sandbox Code Playgroud)
难道我做错了什么?这是一个例子:
如何将秒转换为HH:mm:ss?
目前我正在使用下面的功能
render: function (data){
return new Date(data*1000).toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/, "$1");;
}
Run Code Online (Sandbox Code Playgroud)
这适用于chrome但在firefox中使用12秒我得到了01:00:12
我想使用moment.js来实现跨浏览器的兼容性
我尝试了这个但是没有用
render: function (data){
return moment(data).format('HH:mm:ss');
}
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
编辑
我设法找到了没有 moment.js 的解决方案,如下所示
return (new Date(data * 1000)).toUTCString().match(/(\d\d:\d\d:\d\d)/)[0];
Run Code Online (Sandbox Code Playgroud)
仍然很好奇我怎么能在moment.js做到这一点
我正在尝试学习Typescript.虽然我认为它不相关,但我正在使用VSCode进行此演示.
我有一个package.json包含这些内容的部分:
{
"devDependencies": {
"gulp": "^3.9.1",
"jspm": "^0.16.33",
"typescript": "^1.8.10"
},
"jspm": {
"moment": "npm:moment@^2.12.0"
}
}
Run Code Online (Sandbox Code Playgroud)
然后我有一个这样的Typescript类main.js:
import moment from 'moment';
export class Main {
}
Run Code Online (Sandbox Code Playgroud)
我gulpfile.js看起来像这样:
var gulp = require('gulp');
var typescript = require('gulp-tsb');
var compilerOptions = {
"rootDir": "src/",
"sourceMap": true,
"target": "es5",
"module": "amd",
"declaration": false,
"noImplicitAny": false,
"noResolve": true,
"removeComments": true,
"noLib": false,
"emitDecoratorMetadata": true,
"experimentalDecorators": true
};
var typescriptCompiler = typescript.create(compilerOptions);
gulp.task('build', function() {
return gulp.src('/src')
.pipe(typescriptCompiler()) …Run Code Online (Sandbox Code Playgroud) 我正在使用jquery和moment.js来制作自定义日历.
我在变量中有一个日期对象,myDate如:
Object { date="2014-12-23 14:00:00", timezone_type=3, timezone="Europe/Paris"}
Run Code Online (Sandbox Code Playgroud)
我想,使用moment.js(或不)获取此日期的日期名称,在我的示例中,我需要获取: tuesday
想法?谢谢
我在我的项目和格式化日期中使用Moment.js如下:
var date = moment.unix(1318781876);
return date.format('LLLL');
Run Code Online (Sandbox Code Playgroud)
文档说明支持多个语言环境.我想知道moment.js是否会自动检测语言环境,还是我需要检测语言环境并将其传递给片刻?
更新 我的目标是确保显示的日期采用用户所在区域的格式.即在美国,短日期格式为mm/dd/yy,而在英国则为dd/mm/yy
我使用Moment.js和Moment-Timezone框架,并且有一个Moment.js日期对象,该对象明确地在UTC时区中.如何将其转换为浏览器的当前时区?
var testDateUtc = moment.tz("2015-01-30 10:00:00", "UTC");
var localDate = ???
如果我能找到用户的本地时区就好了; 或者我想将日期对象转换为另一个只使用"本地时区"的数据对象,无论实际是什么.
如何使用Moment库获取当前日期?不是时间戳,而是日期.所以请不要参考已经找到的时间戳问题.
我知道如何在常规javascript中获取它,但我需要一个具有当前日期的时刻对象.
时区怎么样,如何在某个时区获得当前日期?
我是Vuejs的新手.做了些什么,但我不知道这是简单/正确的方式.
我想要的是
我想在数组中有一些日期并在事件上更新它们.首先我尝试了Vue.set,但它没有成功.现在更改我的数组项后:
this.items[index] = val;
this.items.push();
Run Code Online (Sandbox Code Playgroud)
我推送()没有任何数组,它会更新..但有时最后一项将被隐藏,不知何故......我认为这个解决方案有点hacky,我怎么能让它稳定?
简单的代码在这里:
new Vue({
el: '#app',
data: {
f: 'DD-MM-YYYY',
items: [
"10-03-2017",
"12-03-2017"
]
},
methods: {
cha: function(index, item, what, count) {
console.log(item + " index > " + index);
val = moment(this.items[index], this.f).add(count, what).format(this.f);
this.items[index] = val;
this.items.push();
console.log("arr length: " + this.items.length);
}
}
})Run Code Online (Sandbox Code Playgroud)
ul {
list-style-type: none;
}Run Code Online (Sandbox Code Playgroud)
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/1.0.11/vue.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.10.6/moment.min.js"></script>
<div id="app">
<ul>
<li v-for="(index, item) in items">
<br><br>
<button v-on:click="cha(index, item, 'day', -1)">
- …Run Code Online (Sandbox Code Playgroud)可能很容易回答这个但我似乎无法找到一种方法让moment.js以毫秒为单位返回UTC日期时间.这是我在做的事情:
var date = $("#txt-date").val(),
expires = moment.utc(date);
Run Code Online (Sandbox Code Playgroud)
知道我做错了什么吗?