- 1.JavaScript 的简介
- 作用
- 1、html+css 只是可以实现静态的页面无法实现动态的效
- 果
- 2、表单的校验
- 3、背景图片的更换
- 4、操作节点的信息
- 概念
- JavaScript 一种直译式脚本语言,是一种动态类型、弱类型、
- 基于原型的语言,内置支持类型
- 组成
![903fd81d0b656ba8c90b5d7fb1632708.png](https://img-blog.csdnimg.cn/img_convert/903fd81d0b656ba8c90b5d7fb1632708.png)
- ECMAScript:JavaScript的核心
- 文档对象模型(DOM):DOM(文档对象模型)是 HTML 和
- XML 的应用程序接口(API)。DOM 将把整个页面规划成由节
- 点层级构成的文档
- 浏览器对象模型(BOM)对浏览器窗口进行访问和操作
- 特点
- 1.脚本语言
- 脚本语言是一种简单的程序,是由一些ASCII字符构
- 成,可以使用任何一种文本编辑器编写。一些程序
- 语言(如C、C++、Java等)都必须经过编译,将源
- 代码编译成二进制的可执行文件之后才能运行,而
- 脚本语言不需要事先编译,只要有一个与其相适应
- 的解释器就可以执行。
- 脚本语言是指在web浏览器内有解释器解释执行的
- 编程语言,每次运行程序的时候,解释器会把程序
- 代码翻译成可执行的格式。
- 2、基于对象的语言
- 面向对象有三大特点(封装,继承,多态)却一不
- 可。
- 通常“基于对象”是使用对象,但是无法利用现有的
- 对象模板产生新的对象类型,也就是说“基于对象”
- 没有继承的特点。没有了继承的概念也就无从谈论
- “多态”
- 3. 事件驱动:
- 在网页中执行了某种操作的动作,被称为“事
- 件”(Event),比如按下鼠标、移动窗口、选择菜单
- 等都可以视为事件。当事件发生后,可能会引起相
- 应的事件响应。
- 4、简单性
- 变量类型是采用弱类型,并未使用严格的数据类型。
- var a,b,c; a=123; b=“abc”; a=b;
- 5、安全性
- JavaScript不能访问本地的硬盘,不能将数据存入
- 到服务器上,不能对网络文档进行修改和删除,只
- 能通过浏览器实现信息浏览或动态交互
- 6、跨平台性
- JavaScript依赖于浏览器本身,与操作平台无关,
- 只要计算机安装了支持JavaScript 的浏览器(装有
- JavaScript解释器),JavaScript 程序就可以正
- 确执行。
- 缺点
- 各种浏览器支持JavaScript的程度是不一样的,支
- 持和不完全支持JavaScript的 浏览器在浏览同一
- 个带有JavaScript脚本的网页时,效果会有一定的
- 差距,有时甚至会显示不出来。
2.js的引入方式
- 1.在head头部写入<script></script>
- 2.在js文件夹下引入,<script src="js/js.js" type="text/javascript" charset="utf-8"></script>type为引入文件类型,src为路径charset编码方式。
- 注意引入方式不能混用
![c275dfcade5dc60da83cb5679805bcf3.png](https://img-blog.csdnimg.cn/img_convert/c275dfcade5dc60da83cb5679805bcf3.png)
3.js变量的声明与引用
- 声明:var 变量名=变量值 因为是浏览器解析了,为了提高解析速度,只有var类型
- 注意:js中得变量名与java标识符命名规范保持一致即可、
- Js变量名称可以重复,后者会把前者的变量名给覆盖了。
- Js即使没有分号也是可以的,但是不推荐这样书写
![0e99fd6fd50f1aabcfabb9e8b924c049.png](https://img-blog.csdnimg.cn/img_convert/0e99fd6fd50f1aabcfabb9e8b924c049.png)
4.数据的类型
- JS中的数据类型
- number(数字类型的数据)
- string(字符串类型)
- boolean(布尔数据类型)
- object(对象类型)
- JS中的特殊数据类型
- undefined(未定义的)
- NaN(不是一个数字) not a number
- null(空对象)
![93097603a219d2ba1eb58fd146e92f53.png](https://img-blog.csdnimg.cn/img_convert/93097603a219d2ba1eb58fd146e92f53.png)
- 5.js的运算符
- 算术运算符 + - * / % ++ --
- 逻辑运算符& | ! && || ^ < > <= >= !=
- 连接符 +
- 特殊运算符
- (==)等值符
- 先比较类型 如果类型一致,再比较内容
- 如果类型不一致,这时候会进行强制转换统一转number类型,然后再进行内容的比较 (===)等同服
- 先比较类型,如果类型一致,再比较内容
- 如果内容不一致直接返回false
6.js的控制语句
- 条件语句
- if(){}
- if(){}else{}
- if()else if()else if()...else{}
- 分支语句(选择语句)
- swich(){
- case value:break
- default:break
- }
- 循环语句
- while(){}
- 至少执行一次循环体
- do{}while()
- for(){}
7.函数的声明方式
- 1.方式一。Function demo1(){}
- 2.方式二。Var demo2= function(){}
- 3.方式三。Var demo3= new function(“函数体”)括号内必须添加函数体
- 函数参数传递
- 在js中实参的个数和形参的个数可以不一致
- 函数的返回值
- 如果函数没有return 这时候返回 undefined
- ():函数执行符
8.对象:
Date对象:
- getDate()返回的是本月的第几天
- getDay()本星期的第几天
- getMonth()返回月份,月份是0-11表示
- getYear()返回1900年到今年的差值
- GetfullYear()返回全年
Math对象:
- 随机数Math.random()即可
- Math.floor向下取整
- Math.ceil向上取整
String对象:
- Charat()表示第几个下标的字符
- indexOF获取下标
- substr(a,b)开始下标,截取的长度
- substring(a,b)开始下表,b结束下标
- spilt()截取的方法
Globe对象:
- eval()将字符串转化为可供执行的js格式
- Nan判断是否是一个数字
9.数组:
a.声明:
- 方式一 var arr=new Array();
- 方式二、var arr2=new Array(5)写一个数字代表数组的长度,多个数据表示数组存储的内容
- 方式四、var arr=[2,ads,"nc]
b.使用:
- a[]=值,填入下表可以赋值
- 并且数组的下标可以不连续
- 可以通过length数组的的长度来扩容
c.数组的遍历:
- 使用for循环
- for(var i:in arr){
- console.log(arr[i])}增强for循环,i代表的下标
d.数组中常用的方法
- push()添加一个值并且返回一个函数
- Pop删除最后一个并返回元素
- Shift删除第一个
- Unshift添加第一个元素
- splice(a,b)a删除的下表,b删除的个数
- splice(1,0,’你‘),在下表为2处添加的元素你
10.事件event
a.什么是事件:
可以被js探测到的行为叫做事件
- onclick单击事件
- Ondblclick双击事件
- onfocus:元素获得焦点 onblur:元素失去焦点
- 鼠标移入移出效果 onmouseover:鼠标移入 onmouseout:鼠标移出
- onchange:内容改变
- 鼠标按键被按下(只能在表单中使用)onkeydown:按下 onkeyup:松开