1、JavaScript简介
1.1、发展历程
》 1992年:Nombas公司开发C-minus-minus(简称CMM)的嵌入脚本,后改名为ScriptEase
》 1995年:Netscape开发LiveScript 的脚本语言,发布前,Netscape 将其更名为 JavaScript
》 微软决定进军浏览器,发布了 一个 JavaScript 的克隆版,叫做 JScript
》 1997 年,欧洲计算机制造商协会(ECMA)指定JS标准,命名为 ECMAScript 。从此,ECMAScript 作为
JavaScript 实现的基础
1.2、JavaScript的作用
》 Html和css的网页只是”静态”的
》 使用JavaScript,网页才能动起来(让网页具有动画效果)
1.3、使用的环境
》 网页特效,如:抽象、图片轮播、倒计时等
》 表单输入验证
》 网页游戏
1.4、第一个Html示例
》 Html页面中输出《悯农》
》 注释(单行注释与多行注释)
1.5、Js的两种使用方式
》 直接嵌入
》 外部引入
1.6、什么是JavaScript
1.6.1、概述
JavaScript是由网景公司推出,主要运行在浏览器客户端,实现页面交互的脚本语言
1.6.2、特点
》 解释型脚本语言
》 不需要服务器支持
》 直接嵌入页面使用
》 跨平台,易上手
》 基于对象,事件驱动
1.6.3、JavaScript的组成
》 ECMAScript:JavaScript脚本的核心,定义了数据类型、基本语法级分支语句等
》 BOM:浏览器对象模型,提供了操作浏览器对象的相关方法
》 DOM:文档对象模型,提供了文档操作的相关方法
2、变量与数据类型
2.1、变量
1)定义语法
[var] 变量名 = 值;
2)、说明
》 JavaScript采用弱类型。即变量在使用前不需作声明,而是解释器在运行时再检查其数据类型。
》 JavaScript变量是弱类型的,声明统一用 var,这一点与强类型的java语言不同
》 JavaScript变量的类型可以变化, 取决于后面所赋的值
3)、变量命名规则
》 变量名区分大小写
》 只能含有字母 、数字 、下划线_ 、美元符号$
》 不能以数字开头
》 不能使用关键字和保留字
4)、变量命名建议
》 变量名尽可能的短,抓住要点
》 使用有意义的短语命名
》 推荐常用的驼峰命名法
2.2、局部变量和全局变量
1)、全局变量
在 JavaScript 函数内部声明的变量(使用 var)是局部变量,所以只能在函数内部访问它。函数运行完毕,本地变
量就会被删除
2)、局部变量
在函数外声明的变量是全局变量,网页上的所有脚本和函数都能访问它。
3)、对比
》 局部变量会在函数运行以后被删除
》 全局变量会在页面关闭后被删除
2.3、typeof操作符(类型检测)
1)、语法
typeof 字面量/变量
2)、作用
返回变量/字面量的值
2.4、数据类型
1)、number(数字)
》 概述
JavaScript 只有一种数字类型。
》 说明
# 数字可以带小数点,也可以不带
# 极大或极小的数字可以通过科学(指数)计数法来书写
2)、string(字符串)
》 概述
字符串是存储字符的类型。
》 说明
# 字符串是由双引号(”)或单引号(’)括起来的字符序列
# 可以在字符串中使用引号,只要不匹配包围字符串的引号即可
3)、boolean(布尔)
》 概述
布尔值指代真或假、开或关、是或否。
》 说明
# Boolean类型只有两个值,保留字true和false
4)、null(空)
》 概述
可以通过将变量的值设置为 null 来清空变量。
》 说明
# null值表示一个空对象,所以使用 typeof 操作符检测 null 值时会返回"object"
# undefined 表示变量未初始化,null表示变量值为空值
5)、undefined(未定义)
》 概述
undefined表示变量没有值。
》 说明
# 使用var声明变量但未对其初始化时,这个变量的值就是undefined
# 已声明但未初始化的变量是undefined类型,它与未声明的变量是不同的
# 值 undefined 实际上是从值 null 派生来的,所以比较时他们的值是相等的
6)、object(对象)
》 概述
JavaScript中的对象。
2.5、类型转换
1)、Java类型转换的特点
》 转换前后的数据类型兼容
》 根据转换前后数据类型的范围来区分是自动转换还是强制转换
2)、隐式类型转换
隐式转换又叫自动类型转换,不需要用户干预,自动进行类型转换。
3)、显式类型转换
显式转换又叫强制转换,是指将一个变量或表达式强制转换成特定的数据类型。如:String(123);
2.6、类型转换方法
1)类型()
将数据转为目标类型
2)parseXxxx()
将数据转为目标类型。
2.7、NaN(特殊值:Not a Number)
表示当前数据不是一个数字。
2.8、isNaN()
该函数用于检查一个变量是否为数值,如果是,则返回false,如果不是,则返回true
3、运算符和选择结构
3.1、概述
运算符是执行变量或值之间运算的符号
3.2、运算符
3.2.1、算数运算符
+、-、*、/、%、++、--
3.2.2、赋值运算符
1)、最常用的赋值运算符是:=
2)、复合赋值运算符有:+=、-=、*=、/=、%=
3.2.3、比较运算符
1)、运算符
>、>=、<、<=、==、!=、===、!===
2)、==和===
==比较值是否相等;===比较值的同时还比较类型
3.2.4、逻辑运算符
&&、||、!
3.2.5、三元运算符
?:
3.3、选择结构
3.3.1、概述
选择结构是根据条件判断结果来决定程序执行流程的程序控制结构
3.3.2、分类
1)、实现方式
if分支结构、switch分支结构
2)、分支数量
单分支、双分支、多分支
3)、if分支语句
4)、switch分支语句
5)、对比
》 if语句可以用于选择结构中的任何情况
》 switch语句只能用于选择结构中的等值判断,可读性好一些
4、循环语句
4.1、概述
循环结构是反复执行一系列指令直到某些特定条件满足的程序控制结构
4.2、循环语句
1)、for
2)、while
3)、do...while
4)、while...in