JavaScript
JavaScript |
一、JavaScript概述
一个完整的JavaScript实现是由以下3个不同部分组成的:
- 核心(ECMAScript)
- 文档对象模型(DOM)
- 浏览器对象模型(BOM)
JavaScript在开发中绝对多数情况是基于对象的,也是面向对象的。
二、JavaScript引入方式
JavaScript有两种引入方式:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> </body> <!--第一种引入方式:直接填写--> <script> alert('hello world!') </script> <!--第二种引入方式:导入式--> <script src="test.js"></script> </html>
三、JavaScript基础
1.变量
- 声明变量时不用声明变量类型,推荐使用var关键字,如果不用var那么该变量为全局变量;
- 一行可以声明多个变量,并且可以是不同类型;
- 变量命名,首字符只能是字母、下划线、$美元符三选一,且区分大小写。
2.基本规范
- 每行结束可以不加分号(推荐加上),没有分号会以换行符作为每行的结束;
- 单行注释(//) 多行注释(/* */);
- 使用{}来封装代码块。
3.命名规范
1 Camel 标记法 2 首字母是小写的,接下来的字母都以大写字符开头。例如: 3 var myTestValue = 0, mySecondValue = "hi"; 4 Pascal 标记法 5 首字母是大写的,接下来的字母都以大写字符开头。例如: 6 Var MyTestValue = 0, MySecondValue = "hi"; 7 匈牙利类型标记法 8 在以 Pascal 标记法命名的变量前附加一个小写字母(或小写字母序列),说明该变量的类型。例如,i 表示整数,s 表示字符串,如下所示“ 9 Var iMyTestValue = 0, sMySecondValue = "hi";
4.标识符
- 由不以数字开头的字母、数字、下划线、美元符号$组成;
- 常用于表示函数、变量等名称;
- JavaScript语言中代表特定含义的词称为保留字,不允许程序在定义为标识符。
5.数据类型
1 基本数据类型存储在栈里、引用数据类型存储在堆里 2 数字类型(Number) 3 整数、浮点型 4 字符串(String) 5 是由Unicode字符、数字、标点符合组成的序列 6 布尔值(Boolean) 7 true=1、false=0 8 未定义(Undefined) 9 Undefined类型只有一个值Undefined,表示一个变量定义了但未赋值 10 空对象(Null) 11 null类型也只有一个null值,表示为空或者不存在的对象引用
6.数据类型的转换
JavaScript变量在声明的时候并不需要指定数据类型,变量只有在赋值的时候才会确定数据类型,表达式中包含不同类型数据则在计算过程中会强制进行类别转换。
1 数字+字符串:数字转换为字符串 2 数字+布尔值:true转换为1,false转换为0 3 字符串+布尔值:布尔值转换为字符串true或false
还有一些强制转换的函数:
parseInt:强制转换成整数 parseInt('hello') NAN parseInt('123') 123 parseInt('123abc') 123 parseInt('abc123') NAN NAN:not a number,属于Number的一种 parseFloat:强制转换成浮点型 parseFloat('6.12') 6.12 eval:将字符串强制转换为表达式并返回结果 eval('1<2') flase
7.类型查询函数(typeof)
ECMAScript提供了一个typeof运算符来判断一个值的某种类型。
1 typeof的类型(string/number/boolean/object) 2 typeof("test"+3)---->string 3 typeof(null) ---->object 4 typeof(true+1) ---->number 5 typeof(true-false) --->number
8.ECMA Script运算符
1 加(+)、减(-)、乘(*)、除(/)、余数(%)、递增(++)、递减(--) 2 等于(==)、不等于(!=)、大于(>)、小于(<)、大于等于(>=)、小于等于(<=)、与(&&)、或(||)、非(!)
逻辑AND运算符(&&):
如果一个运算数的对象,另一个是Boolean值,返回该对象
如果两个运算数都是对象,返回第二个对象
如果某个运算数是null,返回null
如果某个运算数是NAN,返回NAN
如果某个运算数是undefined,返回undefined
逻辑OR运算符(||):
如果一个运算数是对象,并且该对象左边的运算数值均为false,返回该对象
如果两个运算数都是对象,返回第一个对象
如果最后一个运算数是null,并且其他运算数值均为false,则返回null
如果最后一个运算数是NAN,并且其他运算数值均为false,则返回NAN
如果某个运算数是undefined,返回undefined
9.控制语句
if控制语句:
if (表达式){
语句1;
}else{
语句2;
}
switch语句:
switch (表达式){
case 值1:语句1;break;
case 值2:语句2;break;
case 值3:语句3;break;
default:语句4;
}
for循环控制语句:
for(初始化;条件;增量){
语句1;
}
while循环控制语句:
while (条件){
语句1;
}
try catch异常处理:
1 try{ 2 这段代码从上往下运行,其中任何一个语句抛出异常该代码块就结束运行 3 } 4 catch(e){ 5 如果try代码块中抛出了异常,catch代码块中的代码就会被执行 6 e是一个局部变量,用来指向Error对象或者其他抛出的对象 7 } 8 finally{ 9 无论try中代码是否有异常抛出(甚至是try代码块中有return语句),finally代码块中始终会被执行 10 }
如果需要主动抛出异常,写入 throw Error(" ")即可。