javascrpt插入html中中文字符乱码问题记录

问题就是我使用js做这么个事情:

var description = [
    '你好',
    '你好',
    '你好',
    '你好'
];

var link = '';
var logLink = '';
for (var i = 0; i < urls.length; i++) {
    link = link + "<li><a href=""+ urls[i]
    + "" target="_blank"><img src=""+ imgs[i] 
    + "" width="128" height="150"><div class="vtit">"
    + description[i] +"</div></a></li>";

    logLink = logLink + "<div style="display:none"><img id="log_stat_"+ i +"" src="" /></div>";
};

但是呢,这个js可能放入到utf8的页面,也可能放入到GB2312的页面,那么这个时候问题就出来了

我这个js是utf8编码的,description是中文的UTF8,如果页面是GB2312编码的话,这里的中文显示就会是乱码了。

怎么办?

解决方法就是这里使用Unicode编码,Unicode编码所有页面都能识别的。

所以descriptions就改成:

var description = [
    'u5348u591cu6fc0u60c5',
    'u5e8au4e0au5173u7cfbu0032',
    'u79c1u4ebau8ba2u5236',
    'u4f4eu4fd7u559cu5267'
];

问题记录完毕

原文地址:https://www.cnblogs.com/yjf512/p/3778409.html