js中文乱码怎么解决?

js中文乱码怎么解决?,第1张

js中文乱码解决办法:设置charset=utf-8,完成。

①.js 文件中文显示乱码Javascript文件XX.js编辑保存时有一种编码方案(如GBK)当打开文件的时候所用的编码(如UTF-8)和保存时的编码方案不一致时,则会出现中文显示乱码。

解决方案:

(1)用编辑器打开浏览的时候,选择和原文件编码(如GBK)一致的编码方式查看,则不会出现乱码

(2)在eclipse中的package explorer中选中乱码的XX.js,右键菜单中选择properties,在Text file encoding中选择与XX.js编辑保存时的编码(如GBK),则可以正常显示。

②网站页面中JavaScript中中文字段乱码 在eclipse或者编辑器中XX.js中中文显示正常,在页面调用XX.js,执行后页面结果中中文字段显示乱码。

解决方案: 在引用XX.js的页面上“显示”加上XX.js文件的编码方式,使之与XX.js文件的本身的编码方式(如GBK)保持一致。<scripttype="text/javascript" language="JavaScript" src="/js/XX.js" charset=“GBK” </script建议:

1)在用Eclipse或者Myeclipse新建XX.js,进行编辑时,建议先将Textfile encoding改为UTF-8,然后进行编辑保存。

2)用文本文档或者其他编辑器编辑保存XX.js,建议以UTF-8的编码方式保存。

3)在引用XX.js的页面上“显示”加上XX.js文件的编码方式UTF-8。<scripttype="text/javascript" language="JavaScript" src="/js/XX.js".

js中文乱码的解决方法及详细的 *** 作步骤如下:

1、首先,检查编写的程序页面的字符编码是“gb2312”还是“utf-8”,如下图所示。

2、其次,找到js文件,右键单击并选择“打开方式”,然后选择用“记事本”打开,如下图所示。

3、接着,打开后,单击记事本菜单栏中的“文件”选项,并选择“另存为”,如下图所示。

4、最后,在d出的保存窗口底部有一个“编码”的选项,选择编码类型为程序对应的类型并保存以消除乱码问题,如下图所示。 以上就是解决js中文乱码的 *** 作方法。

首先在github上找到中文字典部分:

[javascript] view plain copy

moment.defineLocale('zh-cn', {

months : '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split('_'),

monthsShort : '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'),

weekdays : '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),

weekdaysShort : '周日_周一_周二_周三_周四_周五_周六'.split('_'),

weekdaysMin : '日_一_二_三_四_五_六'.split('_'),

longDateFormat : {

LT : 'Ah点mm分',

LTS : 'Ah点m分s秒',

L : 'YYYY-MM-DD',

LL : 'YYYY年MMMD日',

LLL : 'YYYY年MMMD日Ah点mm分',

LLLL : 'YYYY年MMMD日ddddAh点mm分',

l : 'YYYY-MM-DD',

ll : 'YYYY年MMMD日',

lll : 'YYYY年MMMD日Ah点mm分',

llll : 'YYYY年MMMD日ddddAh点mm分'

},

meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,

meridiemHour: function (hour, meridiem) {

if (hour === 12) {

hour = 0

}

if (meridiem === '凌晨' || meridiem === '早上' ||

meridiem === '上午') {

return hour

} else if (meridiem === '下午' || meridiem === '晚上') {

return hour + 12

} else {

// '中午'

return hour >= 11 ? hour : hour + 12

}

},

meridiem : function (hour, minute, isLower) {

var hm = hour * 100 + minute

if (hm <600) {

return '凌晨'

} else if (hm <900) {

return '早上'

} else if (hm <1130) {

return '上午'

} else if (hm <1230) {

return '中午'

} else if (hm <1800) {

return '下午'

} else {

return '晚上'

}

},

calendar : {

sameDay : function () {

return this.minutes() === 0 ? '[今天]Ah[点整]' : '[今天]LT'

},

nextDay : function () {

return this.minutes() === 0 ? '[明天]Ah[点整]' : '[明天]LT'

},

lastDay : function () {

return this.minutes() === 0 ? '[昨天]Ah[点整]' : '[昨天]LT'

},

nextWeek : function () {

var startOfWeek, prefix

startOfWeek = moment().startOf('week')

prefix = this.unix() - startOfWeek.unix() >= 7 * 24 * 3600 ? '[下]' : '[本]'

return this.minutes() === 0 ? prefix + 'dddAh点整' : prefix + 'dddAh点mm'

},

lastWeek : function () {

var startOfWeek, prefix

startOfWeek = moment().startOf('week')

prefix = this.unix() <startOfWeek.unix() ? '[上]' : '[本]'

return this.minutes() === 0 ? prefix + 'dddAh点整' : prefix + 'dddAh点mm'

},

sameElse : 'LL'

},

ordinalParse: /\d{1,2}(日|月|周)/,

ordinal : function (number, period) {

switch (period) {

case 'd':

case 'D':

case 'DDD':

return number + '日'

case 'M':

return number + '月'

case 'w':

case 'W':

return number + '周'

default:

return number

}

},

relativeTime : {

future : '%s内',

past : '%s前',

s : '几秒',

m : '1 分钟',

mm : '%d 分钟',

h : '1 小时',

hh : '%d 小时',

d : '1 天',

dd : '%d 天',

M : '1 个月',

MM : '%d 个月',

y : '1 年',

yy : '%d 年'

},

week : {

// GB/T 7408-1994《数据元和交换格式·信息交换·日期和时间表示法》与ISO 8601:1988等效

dow : 1, // Monday is the first day of the week.

doy : 4 // The week that contains Jan 4th is the first week of the year.

}

})

然后,把这段代码复制到moment.js中,位置在最后一句 “return _moment” 的前面,如下:

[javascript] view plain copy

//中文支持

moment.defineLocale('zh-cn', {

months : '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split('_'),

monthsShort : '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'),

//...略

return _moment

运行,但是不起作用,还是显示英文日期。

再仔细观察代码,moment.js中最后返回的变量叫做 _moment,多了个下划线,于是修改刚才那段代码的开头部分,把moment改为_moment,成功!

[javascript] view plain copy

//中文支持

_moment.defineLocale('zh-cn', {

问题解决!


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11221698.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存