Global对象

时间:2022-08-04 20:37:31

1.Global对象是不需要创建实例就可以直接调用方法或属性的对象。有点类是于java中的工具类

2.关于汉字的网络传递

  • 网络访问的过程中在传递数据的时候,传递的本质都是0101,如果你要传送字符的话,字符会先转换为0101再发送,字符转换为0101需要码表来支持,在网络访问中码表只支持拉丁码表如iso,不支持中文码表,就意味着在互联网的访问当中我要传输中文,是不可能将中文直接转换为0101的。
  • http协议不允许中文码表,我们需要手动将中文根据某码表(如UTF-8)变成0101,变成0101比较长,所以将0101转化为16进制其中每两个16进制数用%隔开。这样就可以放到网络当中进行发送了,这就是发送中文的办法。
  • 如果是在表单中进行填写然后提交发送的,浏览器会自动帮我们完成的,自动将中文转换成16进制。

3.方法

<a href="http://www.baidu.com?wd=汉字">点击</a>这个在点击时是没用的,因为汉字是手写的,并没有转换为16进制的形式,网络传输/http是不识别的,这是需要手动将中文转换为16进制。

  • encodeURI/decodeURI 可以将中问Url编码

  var str = "http://www.baidu.com?wd=肖立";
  var encodestr = encodeURI(str);
  alert(encodestr);    //显示 http://www.baidu.com?wd=%E8%82%96%E7%AB%8B
  encodeURI,他只会转中文的那一部分,英文和符号的保持不变。

  • encodeURIComponent/decodeURIComponent     转换的范围更大,包括一些url总的字符"& :",像"."就不会被转换。

var str = encodeURIComponent(str);    //显示http%3A%2F%2F//www.baidu.com%3Fwd%3D%E8%82%96%E7%AB%8B     
encodeURIComponent()

  • parseInt转换成整数---->转换时从左到右依次转换,当遇到不能被转换的字符为止。
  • parseFloat转换成浮点数---->转换时也是从左至右依次转换

  将字符串转为数字的方法
  var str = "123";
  1.var num1 = parseInt(str);
  2.var num2 = +str;
  3.var num3 = new Number(str);

  var str2 = "123a";
  alert(+str2);    //NaN 因为要转化的字符串中含有不能被转换为数字的字符,
  alert(parseInt(str2));    //123   转换时从左到右依次转换,当遇到不能被转换的字符为止。