一.变量
用来临时储存数值的容器,在程序中,变量存储的数值是可以变化的,变量占据一段内存,通过变量的名字可以调用内存中的信息。
- 变量声明:var ;
- 可同时声明多个变量,例如var x=2, y=5;
- 只声明未赋值返回undefined;
变量作用域:即变量的作用范围;
- 全局变量
- 局部变量:函数内部声明,只作用于函数内部,函数参数也是局部的,只在函数内部起作用;
变量的优先级:
- 函数内部,局部变量优先高于同名全局变量;
- 全局作用域中声明可以不使用var,但声明局部变量时,要使用var;
二.数据类型
- undefined:未定义类型的变量,表示变量还没有赋值; NaN:非数字,程序错误产生的一个没有意义的数字;
- null: 空值,定义空的或不存在的引用,不等同于空的字符串或0,var x=null 返回null;
- Boolean:true或false;
- 字符串:由零个或者多个字符构成,字符可以包括字母、数字、标点符号和空格,字符串必须放在单引号或者双引号里;获取字符串长度:str.length;string str1=””; // 空字符串 str1.length( )= 0
string str2=NULL; // NULL
string str3=” ”; //空格串 str2.length() = 1;
- 对象:object
三.运算符
- 赋值运算符:‘=’,主要用于将右边的值赋给左边;
- 算术运算符:加(+),减(-),乘(*),除(/),求余(%),自增(++),自减(--);
注:var a=1; b=a++或a--,先赋值后运算;结果:b=1,a=2;或b=1,a=0;
b=++a或--a,先运算后赋值;结果:b=2,a=2;或b=0,a=0;
- 比较运算符:==, !=, >, >=, <, <=; 返回true或false;
- 逻辑运算符:且(&&),或(||),非(!);在且中,若左侧为错误,则不再执行右侧;在或中,如果左侧为true,同样不再执行右侧;
- 条件运算符:逻辑表达式?语句1:语句2;逻辑表达式为true,则执行语句1,否则2;
- 字符串运算符:连接字符串‘+=’;
- type of返回数据类型,可能返回number,string,boolean,object,function,undefined;
四.条件判断语句
- if语句:
if (conditions) { 当条件为真时执行的代码 };
- if...else:
if (conditions) { 当条件为真时执行的代码; } else{ 当条件不为true时执行的代码; };如果符合条件执行下面的代码,否则执行else下边的代码;
- if...else if...else:
if (conditions1){ 当条件1为true时执行的代码 } else if (conditions2) { 当条件2为true时执行的代码 } else { 当条件1和2都不为true时执行的代码 }
- else if : 当判断条件超过2种
if (conditions1){ 当条件1为true时执行的代码 } else if (conditions2) { 当条件2为true时执行的代码 } else if (conditions n) { 当条件n为true时执行的代码 }else { 当以上条件都不为true时执行的代码 }
- switch: 基于不同的条件执行不同的动作;
switch( n ) { case 1 : 执行代码块1 break; case 2 : 执行代码块2 break; default: 与case1和case2不同时执行的代码 }
五.循环语句
while语句:条件为真时循环执行代码块;
while(条件){ 执行代码块 }
for 语句
for (语句1;语句2;语句3){ //语句1:(代码块)开始前执行; 语句2:定义运行循环(代码块)的条件; 语句3:在循环(代码块)已被执行之后执行 被执行的代码块 }
六.跳转语句
在循环语句中,某些情况需要跳出循环或者跳过循环体内剩余语句,而直接执行下一次循环;
break:立即跳出循环;
continue:停止正在进行的循环而直接进入下一个循环;