Global对象
一.特点
Global是全局对象,Global对象中封装的方法不需要对象就可以直接调用。
即:方法名();
例如:isNaN();
2.方法
1.encodeURI() 编码
2.decodeURI() 解码
3.encodeURIComponent() 编码更多字符
4.decodeURIComponent() 解码更多字符
首先,我们了解一下为什么要编码。据我了解,服务器是不支持中文的,所以,当我们写入中文字符时要将其进行编码。具体是这样的,一个中文对应两个字节,一个字节对应8个二进制数,一个字节用一个%号标记,并把一个字节分成两个四位的二制数,然后分别转换为十六进制数。
下面看一下例子:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<script>
var str = "http://www.baidu.com?wd=《星际穿越》";
var encode1 = encodeURI(str);
document.write(encode1+"<br>");
document.write(decodeURI(encode1)+"<br>");
var encode2 = encodeURIComponent(str);
document.write(encode2+"<br>");
document.write(decodeURIComponent(encode1)+"<br>");
</script>
</body>
</html>
结果:
5.ParseInt() 将字符串中的数字转换为number,但是如果第一个字符不是数字,将转换为NaN;
如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<script>
var str1 = "fdxzx4556hid";
var str2 = "2216ajhdjhai";
document.write(parseInt(str1)+"<br>");
document.write(parseInt(str2));
</script>
</body>
</html>
结果:
6.isNaN() 判断一个数是否为NaN类型。
或许你会认为这个方法没用,让它和NaN的做==运算不就解决了吗,的确,这是一个思路,但是js中NaN和谁比较都返回false,所以才有这个函数的存在。
如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<script>
var s = NaN;
document.writeln(s==NaN);
document.write(isNaN(s));
</script>
</body>
</html>
结果:
7.eval() 将字符串中的js代码执行
如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<script>
var str = "alert(123456789)";
document.writeln(str);
document.write(eval(str));
</script>
</body>
</html>
结果: