一.javascript的引入方式
1.直接编写
<script>js 代码 </script>,放在head标签之间
2.外部导入:<script src="xxx.js"></script>
二.js 变量 、常量、 标识符
变量:
1.声明变量(如果不用var,则是全局变量) var 变量名;
2.一行可以声明多个变量,且可以是不同类型:
var age=5,name="song",job="teacher";
3.变量名首字符只能是字母,下划线,$,余下的字符可以是下划线、美元符号或任何字母或数字字符,且区分大小写.
常量与标识符:
1.直接在程序中出现的数据值
2.由不以数字开头的字符、数字、下划线、$组成
3.常用来表示函数名、变量等
三.js 数据类型
1. num---数值
boolean----布尔值
string----字符串
undefined----undefined(变量未赋值或者函数没返回值时)
null---null
2.num:
整型浮点型统称为数值型
整型:精确表示的范围是-9007199254740992 (-253) 到 9007199254740992 (253),超出范围精度将受影响
浮点数:
3.6,3.8
16进制和8进制数的表达:
16进制数据前面加上0x,八进制前面加0;16进制数是由0-9,A-F等16个字符组成;8进制数由0-7等8个数字组成
16进制和8进制与2进制的换算:
2进制: 1111 0011 1101 0100 <-----> 16进制:0xF3D4 <-----> 10进制:62420 2进制: 1 111 001 111 010 100 <-----> 8进制:0171724
3.字符串(string)
4.布尔类型有两个值ture和false,分别代表1和0,实际运算中ture=1,false=0
5.null 用于表示尚未存在的对象,如果函数或方法要返回的是对象,那么找不到对象时,返回值是null
四.运算符
算术运算符: + - * / % ++ -- 比较运算符: > >= < <= != == === !== 逻辑运算符: && || ! 赋值运算符: = += -= *= /= 字符串运算符: + 连接,两边操作数有一个或两个是字符串就做连接运算
注意:
NaN
var d="yuan"; d=+d; alert(d);//NaN:属于Number类型的一个特殊值,当遇到将字符串转成数字无效时,就会得到一个NaN数据 alert(typeof(d));//Number //NaN特点: var n=NaN; alert(n>3); alert(n<3); alert(n==3); alert(n==NaN); alert(n!=NaN);//NaN参与的所有的运算都是false,除了!=
比较运算符:
比较运算符两侧如果一个是数字类型,一个是其他类型,会将其类型转换成数字类型.
比较运算符两侧如果都是字符串类型,比较的是最高位的asc码,如果最高位相等,继续取第二位比较
等性运算符:执行类型转换的规则如下: 如果一个运算数是 Boolean 值,在检查相等性之前,把它转换成数字值。false 转换成 0,true 为 1。 如果一个运算数是字符串,另一个是数字,在检查相等性之前,要尝试把字符串转换成数字。 如果一个运算数是对象,另一个是字符串,在检查相等性之前,要尝试把对象转换成字符串。 如果一个运算数是对象,另一个是数字,在检查相等性之前,要尝试把对象转换成数字。 在比较时,该运算符还遵守下列规则: 值 null 和 undefined 相等。 在检查相等性时,不能把 null 和 undefined 转换成其他值。 如果某个运算数是 NaN,等号将返回 false,非等号将返回 true。 如果两个运算数都是对象,那么比较的是它们的引用值。如果两个运算数指向同一对象,那么等号返回 true,否则两个运算数不等。
五.流程控制
1.数据结构(从上往下执行)
2.分支结构(if...esle if...elif...elif...else)
特别:
switch基本格式
switch (表达式) {
case 值1:语句1;break;
case 值2:语句2;break;
case 值3:语句3;break;
default:语句4;
}
3.循环结构
for循环
for(初始表达式;条件表达式;自增或自减)
{
执行语句
……
}
#另一种结构
for( 变量 in 数组或对象)
{
执行语句
……
}
while循环
var i=1; while (i<=7) { document.write("<H"+i+">hello</H "+i+"> "); document.write("<br>"); i++; } //循环输出H1到H7的字体大小
异常处理
try {
//这段代码从上往下运行,其中任何一个语句抛出异常该代码块就结束运行
}
catch (e) {
// 如果try代码块中抛出了异常,catch代码块中的代码就会被执行。
//e是一个局部变量,用来指向Error对象或者其他抛出的对象
}
finally {
//无论try中代码是否有异常抛出(甚至是try代码块中有return语句),finally代码块中始终会被执行。
}