时刻js没有正确翻译日语语言环境的日期格式

时间:2016-06-20 05:52:44

标签: angularjs character-encoding momentjs

我需要将日期格式转换为日语语言环境,但它显示输出错误。我也尝试通过更改浏览器的语言环境,但它在chrome和IE中都不起作用

  app.filter('japan', function() {
          return function(dateString, format) {
              return moment().locale('ja').format('LLLL'); 
          };
         })

格式输出为2016蟷エ6譛 20譌·蜊燕11 11谲N蜕 譛域届譌·

所需产出为2016年6月20日午前11时30分月日日

1 个答案:

答案 0 :(得分:0)

这不是Moment的问题。这是一个称为mojibake的编码问题,当您的网页的编码无法正确处理您正在使用的字符时,就会发生这种情况。一般来说,最好使用像UTF-8或UTF-16这样的中性编码(UTF-8是事实上的标准),从上面的评论来看,听起来这确实解决了你的问题。

此外,最好在包含本地化内容的元素上设置lang=""属性(您可以像<html>元素一样高),因为某些字符可能有所不同外观取决于当地。

以你的文字为例,角色曜的右上角看起来像羽lang="zh",但看起来像两个并排的lang="jp"