基本数据类型

基本数据类型
数值类型:包含整数或浮点数。
布尔类型:只有true或false两个值。
字符串类型:字符串变量必须用引号括起来,引号可以是单引号,也可以是双引号。
underfined类型:专门用来确定一个已经创建但是没有初值的变量。
null变量:用于表明某个变量的值为空。
当数值变量的值超出了其表数范围时,将出现两个特殊值:Infinity(正无穷大)和-Infinity(负无穷大)

<html>
<head>
	<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
	<script type="text/javascript">
		var x=1.7976931348623157e308;
		x=x+1e292;
		alert(x);
	</script>
</head>
<body>


</body>
</html>

Infinity和-Infinity之间进行算术运算时,结果会变成另一个特殊值:NaN.

<html>
<head>
	<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
	<script type="text/javascript">
		var y=-1.7976931348623157e308;
		y=y-1e292;
		alert('y='+y);
		alert('y+3E3='+(Y+3E3));
		alert('y*3E3='+(y*3E3));
		alert('y*-3E3='+(y*-3E3));
		alert('y+3E3000='+(y+3E3000));
		a=Number.POSITIVE_INFINITY;
		b=Number.POSITIVE_INFINITY;
		alert(a+b);
	</script>
</head>
<body>
</body>
</html>

javascript中的算术运算允许除数为零(除数和被除数也可同时为零,得到的结果为NaN,正数除0的结果就是Infinity,负数除零的结果就是-Infinity。
NaN==NaN返回false。

<html>
<head>
	<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
	<script type="text/javascript">
		var x=0/0;
		if(x!=x)
		{
			alert("NaN不等于NaN");
		}
		if(isNaN(x))
		{
			alert("x是一个NaN");
		}
	</script>
</head>
<body>
</body>
</html>

number类的常量与特殊值的对应
Number.MAX_VALUE:数值型变量允许的最大值。
Number.MIN_VALUE:数值型变量允许的最小值。
Number.POSITIVE_INFINITY:Infinity(正无穷大)。
Number.NEGATIVE_INFINITY:-Infinity(负无穷大)。
Number.NaN:(非数)。

<html>
<head>
	<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
	<script type="text/javascript">
		var a=.3333;
		var b=a*5;
		alert(b);
	</script>
</head>
<body>
</body>
</html>

字符串类型:
length:属性,直接返回字符串长度。
indexOf():返回字符串中特定字符串第一次出现的位置。
lastIndexOf:返回字符串中特定字符串最后一次出现的位置。

<html>
<head>
	<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
	<script type="text/javascript">
		var a="abc中国";
		var b=a.length;
		var c=String.fromCharCode(97,98,99);
		alert(b+"---"+a.charAt(4)+"---"+a.charCodeAt(4)+"---"+c);
	</script>
</head>
<body>
</body>
</html>

indexOf和lastIndexOf()用于判断某个子串的位置。
indexOf(searchString[,startIndex]):搜索目标字符串searchString出现的位置。其中startIndex指定不搜索左边startIndex个字符。
lastIndexOf(searchString[,startIndex]):搜索目标字符串searchString最后一次出现的位置。

<html>
<head>
	<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
	<script type="text/javascript">
		var a="hellojavascript";
		var b=a.indexOf("llo");
		var c=a.indexOf("llo",3);
		var d=a.lastIndexOf("a");
		alert(b+"\n"+c+"\n"+d);
	</script>
</head>
<body>


</body>
</html>

javascript中的substring()和slice()
slice(start[,end]):可以接受负数作为索引,当使用负数索引值时,表示从字符串的右边开始计算索引,即最右边的索引为-1.

<html>
<head>
	<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
	<script type="text/javascript">
		var s="abcdefg";
		var a=s.slice(0,4);
		var b=s.slice(2,4);
		var c=s.slice(4);
		var d=s.slice(3,-1);
		var e=s.slice(3,-2);
		var f=s.slice(-1,-3);
		alert("a:"+a+"\nb:"+b+"\nc:"+c+"\nd:"+d+"\ne:"+e+"\nf:"+f);
	</script>
</head>
<body>
</body>
</html>

match()方法返回匹配的子字符串,支持使用全局匹配,通过使用g标志来表示全局匹配。返回值为字符串数组或null,如果包含匹配值,将返回字符串数组;否则就返回null。
search()返回匹配的索引值,返回所有匹配正则表达式的子串所组成的数组。返回值为整型变量,如果搜索到匹配字串,则返回子串的索引值;否则返回-1.

<html>
<head>
	<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
	<script type="text/javascript">
		var s="abdf--abc@d.comcdefg";
		a=s.search(/[a-z]+@d.[a-zA-Z]{2}m/);
		var str="1dfd2dfs3df5";
		var b=str.match(/\d/g);
		alert(a+"\n"+b);
	</script>
</head>
<body>
</body>
</html>

underfined类型的值只有一个underfined,该值用于表示某个变量不存在,或者没有为其分配值,也用于表示对象的属性不存在。
null用于表示变量的值为空。
如果要精确区分null和underfined,应该考虑使用精确等于符(===)

<html>
<head>
	<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
	<script type="text/javascript">
		var x,y=null;
		if(x===undefined)
		{
			alert('声明变量后默认值为undefined');
		}
		if(x===null)
		{
			alert('声明变量后默认值为null');
		}
		if(x==y)
		{
			alert("x(undefined)==y(null)");
		}
		if(String.xyz===undefined)
		{
			alert("不存在的属性值默认为undefined");
		}
	</script>
</head>
<body>
</body>
</html>

正则表达式
.:可以匹配任何字符。
\d:匹配0~9的所有数字。
\D:匹配非数字。
\s:匹配所有的空白字符。
\S:匹配所有的非空字符。
\w:匹配所有的单词字符。
\W:匹配所有的非单词字符。
[]:[0~9]:表示0到9任意数字。
[a~z]:表示a到z任意一个字符。
[axy]:表示axy任意一个字符。

<html>
<head>
	<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
	<script type="text/javascript">
		alert(/^<a href=(\'|\")[a-zA-Z0-9\/:\.]*(\'|\")>.*<\/a>$/.test("<a href='http://www.baidu.com'>更开办纳斯uu</a>"));
		function trim(s)
		{
			return s.replace(/(^\s*)|(\s*$)/g,"");
		}
		alert(trim(' Hello,JavaScript '));
	</script>
</head>
<body>
</body>
</html>

复合类型
Object:对象
Array:数组
Function:函数
String:字符串类

<html>
<head>
	<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
	<script type="text/javascript">
		var a=[3,5,23];
		var b=[];
		var c=new Array();
		b[0]='hello';
		b[1]=6;
		c[5]=true;
		c[7]=null;
		alert(a+"\n"+b+"\n"+c+"\na数组的长度:"+a.length+"\nb数组的长度:"+b.length+"\nc数组的长度:"+c.length);
	</script>
</head>
<body>
</body>
</html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值