1、JavaScript(简称js)
(1)js是弱类型语言,java是强类型
弱类型:类型可变
强类型:定义变量时,类型已确定且不可变
(2)特点
① 交互性
② 安全性
③ 跨平台性
2、JavaScript和html代码的结合
(1)在head标签或body标签中使用script标签来书写JavaScript代码
(2)用途:
script标签可以用来定义js代码或者使用script引入外部的js文件来执行,src属性专门用来引入js文件路径(相对路径和绝对路径都可以)
(3) script标签定义js代码和引入js文件的两个功能二选一,不能同时使用!!!
3、JavaScript的变量类型
(1)数值类型:number
(2)字符串类型:string
(3)对象类型:object
(4)布尔类型:boolean
(5)函数类型:function
4、JavaScript里特殊的值:
(1)undefined:未定义,所以js变量未赋予初始值时,默认值都是undefined
(2)null:空值
(3)NAN:全称Not a Number,表示非数字,非数值
5、关系运算
(1)等于(==):等于是做简单的字面值比较
(2)全等于(===):除了做字面值的比较外,还会比较两个变量的数据类型
6、逻辑运算
注意!!! 在JavaScript语言中,所有变量都可以作为一个boolean类型的变量去使用。
其中:0、null、undefined、""(空串)都认为是false;其他为真。
(1)且运算:&&
① 当表达式全为真时,返回最后一个表达式的值
② 当表达式中有一个为假时,返回第一个为假的值
(2)或运算:||
① 当表达式全为假时,返回最后一个表达式的值
(3)取反运算:!
7、数组
(1)格式:
var 数组名 = []; //空数组
var 数组名 = [1,'abc',true] //定义数组的同时赋值元素
(2)作用:
javaScript语言中的数组,只要我们通过数组下标赋值,那么最大的下标值就会自动给数组做扩容操作[注意:只能是赋值,读取无法实现扩容操作]
(3)循环数组时,变量类型要写var!不然会报错
8、函数
(1)定义方式
① 使用function关键字来定义
<1> 格式
function 函数名(形参列表){
函数体
}
<2> 注意:只被定义,函数是不能执行的,只有调用时,函数才能执行。
<3> 有参函数定义时,不需要指定参数类型(因为都是var,没意义),直接写变量名即可(相当于指定个数)
<4> JavaScript语言中,如何定义带有返回值的函数?
只需在函数体内直接使用return语句返回值即可!(不用指定类型)
② 第二种定义方式
格式:var 函数名 = function (形参列表) { 函数体 }
9、JS函数中不允许重载,若强制重载则会直接覆盖掉上一次的定义(有点类似于就近原则)
10、隐形参数arguments:不需要定义,但却可以直接用来获取所有参数的变量,叫做隐形参数。(类似java基础的可变长参数——public void fun(Object...args);其实质是一个数组)
js中的隐形参数也和java的可变长参数一样,操作类似数组。
11、js中的自定义对象
(1)Object形式的自定义对象
① 对象的定义
var 变量名 = new Object(); //对象实例(空对象)
变量名.属性名 = 值; //定义一个属性
变量名.函数名 = function(){} //定义一个函数
② 对象的访问
变量名.属性/函数名();
(2){}形式的自定义对象
① 对象的定义
var obj = {
属性名 : 值,
属性名 : 值, //定义属性:前几组用逗号隔开,最后一组不要加
属性名 : 值, //但如果最后一组属性后面仍有函数,则需要加上逗号
函数名:function(){}
};
② 对象的访问
变量名.属性/函数名();
12、js中的事件
(1)定义:电脑输入设备与页面进行交互的响应,叫做事件
(2)常见事件
① onload 加载完成事件 页面加载完成后,常用于页面js代码初始化操作
② onclick单击事件 常用于按钮的点击响应操作
③ onblur 失去焦点事件 常用于输入框失去焦点后验证其输入内容是否合法
④ onchange 内容发生改变事件 常用于下拉列表和输入框内容发生变化后操作
⑤ onsubmit 表单提交事件 常用于表单提交前,验证所有表单是否合法
(3)事件的注册(绑定)
① 含义:告诉浏览器当事件响应后要执行哪些操作代码
② 分类:静态注册和动态注册
③ 静态注册:通过html标签的事件属性直接赋于事件响应后的代码
④ 动态注册:通过js代码得到标签的dom对象,然后通过dom对象.事件名=function(){}形式赋于事件响应后的代码
基本步骤为:获取标签对象——>标签对象.事件名 = function(){}