我的JS:
...
var dateText='';
dateText = moment(scope.mtxMaxdate,'MM-DD-YYYY');
console.log(dateText);
...
我想输出我的值示例:'12/12/2014'
但在控制台中我有:
Moment {_isAMomentObject: true, _i: "17/12/2014", _f: "MM-DD-YYYY", _isUTC: false, _pf: Object…}
为什么..?
答案 0 :(得分:3)
正如momentjs docs中所述,您应该使用.format()
函数。
这样的事情应该这样做:
var dateText='12-12-2014';
var dateObject = moment(dateText,'MM-DD-YYYY');
console.log(dateObject.format('DD/MM/YYYY'));
您在第二行作为参数提供的格式只是解析格式。
我更新了代码,你使用angular或不使用angular的事实并没有改变。我认为你不明白的是,时刻js会从字符串日期生成对象。然后,您可以根据需要格式化此日期对象。
答案 1 :(得分:0)
但是根据接受的答案,有一个抛弃的贬值警告。 Deprecation warning in moment js
然而现在似乎没有发出警告。不确定结果值是否是您可能需要的值。
> moment("12-25-1995", ["MM-DD-YYYY", "YYYY-MM-DD"]).format('MM-DD-YYYY')
> "12-25-1995"
如果你有Date
对象将其转换为String()然后应用.format()