第一部分:基础知识
1.基本数据结构类型以及基本的运算符
a.基本的数据类型
-
JavaScript中有五种简单数据类型,也称为基本数据类型。
-
undefined(不明确的):对未初始化的变量及未声明的变量使用typeof运算符均会返回undefined。
-
null(空) :null是空类型,表示一个变量已经有值,但值为空对象,使用typeof检测时会返回object。
-
boolean(布尔): boolean是布尔类型,也称真假类型。这个类型有两个标准值:true(真)和false(假)。布尔值用来表示一个逻辑表达式的结果,通常用做判断处理。
-
number(整型):在c#语言中,小数和整数会被分别存储在不同的类型中。但在JavaScript中,整数、小数都是numbe。
-
string(字符串):string是字符串类型,这是程序中使用最广的一种类型。字符串是使用单引号或双引号引起来的若干字符
另外还有一种复杂数据类型———object对象类型。JavaScript是基于对象的语言,这意味着程序员既可使用系统自定义的对象,也可使用自己创建的对象。
由于JavaScript是弱类型的,在定义变量时都用var来定义。var的类型取决于你赋的值。typeof操作符就是检测给定变量的数据类型的操作符。其中document.write();是输出的一种方式。下面代码()中的+" "时为了在输出时的间隔。
大家用浏览器检测代码推荐用google浏览器
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<script type="text/javascript">
var a="hello";
document.write(typeof a+" ");//String
var b;
document.write(typeof b+" ");//undefined
var c=35.5;
document.write(typeof c+" ");//number
var d=new Date();
document.write(typeof d+" ");//object
var e=null;
document.write(typeof e+" ");//object
var f=1>2;
document.write(typeof f+" ");//boolean
</script>
</body>
</html>
```)
输出的结果如下:
b.基本运算符
运算符:运算符号是一种特殊的符号,一般由1~3个字符组成,用于实现数据之间的运算、赋值和比较。
类型 | 运算符 |
---|---|
算术运算符 | + - * / % ++ - - |
赋值预算符 | = |
比值运算符 | > < >= <= == != |
逻辑运算符 | && II ! |
“+”也能实现字符串的相加,只要表达式中有一个字符串, 用“+” 相连成一个新的字符串,例如:’demo‘+123的结果是’demo123’。
算术运算符:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<script type="text/javascript">
var a=10;
var b=20;
document.write(a+b+"<br />");
document.write(a-b+"<br />");
document.write(a*b+"<br />");
document.write(a/b+"<br />");
document.write(a%b+"<br />");
document.write(a++ +"<br />");
document.write(a++ +"<br />");
document.write((a--) +"<br />");
document.write(a--+"<br />");
</script>
</body>
</html>
a++表示的是先输出后再+1
其中< br/ >起换行的作用,输出的结果如下:
结果大家可以直接换数字试试看,如果报错建议看看是不是输入法为中文。
比值运算符:
比值运算符的运用总的来说一般喜欢用在判断语句中,没有什么特殊的地方。其中要注意的是在之后的讲到的判断语句中要用==还不是=。=是赋值的运算符。
下面举个例子。
<script type="text/javascript">
var a=50;
var c=54;
var d=50;
if(a>c){
document.write("a大"+"<br />");
}
else
document.write("c大"+"<br />");
if(a==d){
document.write("a和d相等"+"<br />")
}
if(a=c){
document.write("a和c相等"+"<br />")
}
</script>
由上面的代码会输出的结果可以看出来,就算a和c不相等也会执行判断语句中程序,所以之后在写判断语句时要注意==和=的区别。不然运行的结果会和你想的不一样
逻辑运算符
&& 表示与,表示某事件和另一个事件或者多个事件同时成立时为真。否则为假。
|| 表示或,表示某事件和另一个事件或者多个事件至少有一件成立成立时为真。否则为假
**!**表示否
<script type="text/javascript">
var a=1;
var g=5;
var c=3;
if(a==1&&g==5){
document.write("今天放假<br />");
}
else
document.write("回去上课吧<br />");
if(a==1&&c==5){
document.write("今天放假<br />");
}
else
document.write("回去上课吧<br />");
if(a==1||c==5){
document.write("今天放假<br />");
}
else
document.write("回去上课吧<br />");
if(a==5||c==5){
document.write("今天放假<br />");
}
else
document.write("回去上课吧<br />");
if(a!=c){
document.write("今天放假<br />");
}
else
document.write("回去上课吧<br />");
</script>
结果如下: