扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
1、首先查看自己所写程序页面的编码是什么字符编码的,是gb2312还是utf-8的:
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:申请域名、网页空间、营销软件、网站建设、双桥网站维护、网站推广。
2、找到js文件右击鼠标,选择打开方式,找到记事本的选项打开:
3、打开后单击记事本菜单栏的文件选项,然后选择另存为,弹出另存为对话框:
4、在弹出的保存窗口的最下面有一个编码类型,将这个编码类型选择程序对应的类型,然后保存,就可以消除乱码的问题了。以上就是解决js中文乱码的操作:
//--------把中文字符转换成Utf8编码------------------------//
function EncodeUtf8(s1)
{
var s = escape(s1);
var sa = s.split("%");
var retV ="";
if(sa[0] != "")
{
retV = sa[0];
}
for(var i = 1; i sa.length; i ++)
{
if(sa[i].substring(0,1) == "u")
{
retV += Hex2Utf8(Str2Hex(sa[i].substring(1,5)));
}
else retV += "%" + sa[i];
}
return retV;
}
function Str2Hex(s)
{
var c = "";
var n;
var ss = "0123456789ABCDEF";
var digS = "";
for(var i = 0; i s.length; i ++)
{
c = s.charAt(i);
n = ss.indexOf(c);
digS += Dec2Dig(eval_r(n));
}
//return value;
return digS;
}
function Dec2Dig(n1)
{
var s = "";
var n2 = 0;
for(var i = 0; i 4; i++)
{
n2 = Math.pow(2,3 - i);
if(n1 = n2)
{
s += '1';
n1 = n1 - n2;
}
else
s += '0';
}
return s;
}
function Dig2Dec(s)
{
var retV = 0;
if(s.length == 4)
{
for(var i = 0; i 4; i ++)
{
retV += eval_r(s.charAt(i)) * Math.pow(2, 3 - i);
}
return retV;
}
return -1;
}
function Hex2Utf8(s)
{
var retS = "";
var tempS = "";
var ss = "";
if(s.length == 16)
{
tempS = "1110" + s.substring(0, 4);
tempS += "10" + s.substring(4, 10);
tempS += "10" + s.substring(10,16);
var sss = "0123456789ABCDEF";
for(var i = 0; i 3; i ++)
{
retS += "%";
ss = tempS.substring(i * 8, (eval_r(i)+1)*8);
retS += sss.charAt(Dig2Dec(ss.substring(0,4)));
retS += sss.charAt(Dig2Dec(ss.substring(4,8)));
}
return retS;
}
return "";
}
记得不怎么清楚 JavaScript 原身 是Netscape的LiveScript ,客户端脚本语言,因为当时sun的java比较流行,便赶时髦 叫做 JavaScript
Script 即脚本意思,你可以理解它的中文意思即 java的客户端脚本语言,实际上它与java是不同的
中文拼音排序一直都是很有趣的一个问题。推荐使用这个函数 String.prototype.localeCompare(),链接 MDN。首先用 localeCompare 试下拼音排序
var array = ['武汉', '北京', '上海', '天津'];
array.sort(
function compareFunction(param1, param2) {
return param1.localeCompare(param2);
}
);
array // ["北京", "上海", "天津", "武汉"]
然后根据 26 个英文字母分组排序,函数如下,
function pySegSort(arr) {
if(!String.prototype.localeCompare)
return null;
var letters = "*abcdefghjklmnopqrstwxyz".split('');
var zh = "阿八嚓哒妸发旮哈讥咔垃痳拏噢妑七呥扨它穵夕丫帀".split('');
var segs = [];
var curr;
letters.forEach(function(item,i){
curr = {letter: item, data:[]};
arr.forEach(function(item2){
if((!zh[i-1] || zh[i-1].localeCompare(item2) = 0) item2.localeCompare(zh[i]) == -1) {
curr.data.push(item2);
}
});
if(curr.data.length) {
segs.push(curr);
curr.data.sort(function(a,b){
return a.localeCompare(b);
});
}
});
return segs;
}
测试:
pySegSort(["我","不","懂","爱","啊","按","已","呀","选","县"])
结果:
[{"letter":"a","data":["啊","爱","按"]},{"letter":"b","data":["不"]},{"letter":"d","data":["懂"]},{"letter":"w","data":["我"]},{"letter":"x","data":["县","选"]},{"letter":"y","data":["呀","已"]}]
var arr = ["张三","李四","王五","阿三"];
document.write(arr+"");
arr.sort(function(a,b){
return a.localeCompare(b);
});
document.write(arr);
定义和用法:
用本地特定的顺序来比较两个字符串。
语法:
stringObject.localeCompare(target)
参数描述:
target 要以本地特定的顺序与 stringObject 进行比较的字符串。
返回值:
说明比较结果的数字。如果 stringObject 小于 target,则 localeCompare() 返回小于 0 的数。如果 stringObject 大于 target,则该方法返回大于 0 的数。如果两个字符串相等,或根据本地排序规则没有区别,该方法返回 0。
说明:
把 和 运算符应用到字符串时,它们只用字符的 Unicode 编码比较字符串,而不考虑当地的排序规则。以这种方法生成的顺序不一定是正确的。例如,在西班牙语中,其中字符 “ch” 通常作为出现在字母 “c” 和 “d” 之间的字符来排序。
localeCompare() 方法提供的比较字符串的方法,考虑了默认的本地排序规则。ECMAscript 标准并没有规定如何进行本地特定的比较操作,它只规定该函数采用底层操作系统提供的排序规则。
参考资料
百度知道.百度知道[引用时间2018-1-5]
JavaScript简介:
Javacript是一种能让你的网页更加生动活泼的程式语言,也是目前网页中设计中最容易学又最方便的语言。你可以利用Javacript轻易的做出亲切的欢迎讯息、漂亮的数字钟、有广告效果的跑马灯及简易的选举,还可以显示浏览器停留的时间。让这些特殊效果提高网页的互动性、提供亲切的服务。
由来
谈到JavaScript的历史,首先就得介绍[网景](Netscape)这家公司,相信很多人使用过Netscape浏览器来浏览网页,这家公司在设计浏览器的时候,一方面为了辅助本身发展的一种名为LiveWire的程式,另一方面为了提高网页设计的互动性,所以发展了LiveScript这个电脑语言。
那JavaScript和LiveScript有什么关系呢?在Netscape发展LiveScript的同时,另一家名为[升阳](Sun)的公司也正在发展Java语言,为了辅助Java的网页程式方面的设计,所以这两家公司进行合作,共同发展LiveScript语言,并且将LiveScript语言改名为Javacript,这就是Javacript的由来。
JavaScript刚开始时仅应用在Netscape浏览器,不过随着使用JavaScript制作网页的人愈来愈多,微软的IE浏览器也提供了新功能,现在可以在IE浏览器上看到JavaScript的效果了。
JavaScript和Java的差别
JavaScript和Java的差别究竟在哪儿呢?虽然名称很相似,而且都是在Internet和WWW盛行之下,所发展出为的两种提供网页程式设计的语言,但是却有很大的差异。前面介绍过JavaScript的前身是网景(Netscape)公司发展的Live Script语言,直到和升阳(Sun)公司合作之后,才改名为JavaScript,而Java也是由升阳公司发展出来的,所以名字才会这么相似。尽管如此,JavaScript和Java仍然是不同的语言。我们整理出以下四点帮助你了解两者的差异:
1、JavaScript是一种象文件一样的描述语言,透过浏览器就可以直接执行;而Java像正统的程式语言(如C/C++)一样,必须先进行编绎和连结等动作才可执行。
2、JavaScript必须编写在HTML文件中,直接查看网页的原始码,就可以看到JavaScript程式,所以没有保护,任何人都可以透过HTML文件复制程式;而Java应用在网页的程式称为Java Applet(Applet是[小程式]的意思),是和HTML文件分开的。
3、JavaScript的结构较为自由松散,譬如,程式中使用的变数前并不是需要明确的定义,而Java和正统的程式语言一样,结构较为严谨。
4、JavaScript不具有读写档案及网络控制等功能,Java则有提供这些功能,但是JavaScript在网页内容的控制和互动性方面,可算是最方便快捷的。
JavaScript的功能
显示信息提示
许多网站在你一连上时,画面上会先出现一个欢迎讯息对话盒,不但和你打招呼,还会发布一些重要讯息
显示日期时间
某些网页会显示目前的日期和时间,可能你会觉得有点神奇,怎么浏览器会知道目前的时间呢?这也是JavaScript提供的功能,它可以侦测你的电脑目前的时间,并且显示在网页中。
显示更新日期
许多网页会公告最新更新日期让大家知道,Java Scirpt可以自动侦测网页修改的日期,让你省去在每次修改网页时就得修改日期的动作。
跑马灯文字
让你可以方便显示较长的讯息,又不占去大块的版面空间。
按钮变化效果
当你移动滑鼠游到左边的按钮上时,按钮便会变成色,在浏览器下方状态列上也会显示出相关文字,这也是利用JavaScript制作的动态效果。
浏览器编码问题。选择工具栏的查看-字符编码-选择unicode8.
另外静态网页无法强制浏览器使用某编码,就算设置meta也是不能的。动态网页可以服务器端用header来强制启用。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流