1.1JavaScript的概述
1.1.1什么是JavaScript
JavaScript是web上一种强大的编程语言,用于开发交互式的web页面,
?JavaScript 被设计用来向 HTML 页面添加交互行为。 
?JavaScript 是一种脚本语言(脚本语言是一种轻量级的编程语言)。 
?JavaScript 由数行可执行计算机代码组成。 
?JavaScript 通常被直接嵌入 HTML 页面。 
?JavaScript 是一种解释性语言(就是说,代码执行不进行预编译)。
JavaScript的组成:
	ECMAScript:语法,语句.
?	BOM:浏览器对象
	DOM:Document Object Model.操作文档中的元素和内容.
1.1.2JavaScript的作用
	使用JavaScript添加页面动画效果,提供用户操作体验
1.1.3JavaScript的引入
	1.内嵌式
	<script type="text/javascript">
	//此处为JavaScript代码
	</script>
	2.外联式
	<script src="1.js" type="text/javascript" ></script>
1.2基本语法
	1.2.1变量
	1)在使用JavaScript时,需要遵循以下命名规范:
	?必须以字母或下划线开头,中间可以是数字、字符或下划线
	?变量名不能包含空格等符号
	?不能使用JavaScript关键字作为变量名,如:function
	?JavaScript严格区分大小写。	
	2)变量的声明
		var 变量名;	//JavaScript变量可以不赋值,直接使用。默认值:undefined
	3)变量的赋值
		var 变量名 = 值;	//JavaScript变量是弱类型,及同一个变量可以存放不同类型的数据
1.2.2数据类型
	【基本类型】
		?undefined, undefined类型只有一个值,即 undefined。当声明的变量未初始化时,该变量的默认值是 undefined。
		?null,只有一个专用值 null,表示空,一个占位符。值 undefined 实际上是从值 null 派生来的,因此 ECMAScript 把它们定义为相等的。
		?alert(null == undefined);  //输出 "true",尽管这两个值相等,但它们的含义不同。
		?boolean,有两个值 true 和 false 
		?number,表示任意数字
		?string,字符串由双引号(")或单引号(‘)声明的。JavaScript 没有字符类型	
	【引用类型】
		?引用类型通常叫做类(class),也就是说,遇到引用值,所处理的就是对象。
		?JavaScript是基于对象而不是面向对象。
		?JavaScript提供众多预定义引用类型(内置对象)。
		造一个对象:var obj = new Object();
		造一个字符串对象:var str = new String();
		造一个日期对象:var date = new Date();
		?内置函数的重要转换: 字符串转成数字
		  parseInt parseFloat	
1.2.3运算符操作
	JS中的布尔运算规则(一些其他数据类型值,可以当成布尔值使用)
			 * undefined:相当于false
			 * null:相当于false
			 * number:0相当于false;非0的值就是true
			 * string:""空字符串 false;非空的字符串就是true
			 * object:true	
1.3函数(重要)
		* JS中的函数:看成是java中的方法
	 * 1.普通函数的定义
			 * 格式:
			 * 	function 函数名(参数列表){
			 * 		函数体;	
			 * 		return 任意值;
			 * 	}
			 * 注意:
			 * 	1.参数列表中的形式参数,不能写数据类型
			 * 	2.函数的返回值
			 * 		函数中写了return就是有返回值
			 * 		函数中没写return就没有返回值
		function sum (a,b){
				//alert(a+b);
			}
			//调用两个整数求和的函数
			var a = sum(1,2);
			//alert(a);//undefined	 
			 
	 * 2.匿名函数:定义一个函数没有名字
			 * 格式:
			 * 	function(参数列表){
			 * 		函数体;	
			 * 	}
			 * 注意:
			 * 	匿名函数有2种使用方式:
			 * 	1.可以把一个匿名函数赋值给一个变量,通过变量名使用这个函数
			 * 	2.可以把匿名函数当成一个其它函数的参数使用(定时器)
		var x = function(a,b){
				return a*b;
			}
			alert(x(10,20));
			
			/*function abc( funcution(){
				//参数传递匿名函数
			}){}*/	 
			
1.4事件(重要)
	1.4.1事件概述
		 * JS的事件:
			 * 	1)事件源:被监听的html元素
			 * 	   就是发生事件的地点(标签,元素 按钮,图片,文本)
			 * 	  	天津港口
			 * 	2)事件:某类动作,例如点击事件,移入移除事件,敲击键盘事件等
			 * 		爆炸事件
			 * 		点击事件,获取焦点事件,失去焦点...
			 * 	3)事件与事件源的绑定:在事件源上注册上某事件
			 * 		事件与事件源必须的绑定在一起
			 * 		天津港口发生了爆炸事件
			 * 		按钮发生了点击事件,文本框发生了获取焦点事件,文本框发生了失去焦点事件
			 * 	4)事件触发后的响应行为:事件触发后需要执行的代码,一般使用函数进行封装
			 * 		天津港口发生了爆炸事件
			 * 		后续处理:
			 * 			救人,灭火,重建...
			 * 		按钮发生了点击事件
			 * 		后续处理:
			 * 			使用函数处理,函数中写处理的逻辑
			 * 			function fn(){
			 * 				alert("按钮被点击了");
			 * 			}
			 * 
			 * 		事件源(按钮),发生了点击的事件,
			 * 		发生点击事件之后,我们使用一个函数处理这个事件
			 * 
			 * 怎么给元素添加事件
			 * 	元素上(地点),添加一个属性 onXXX="事件的处理(函数)"	
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>JS中的事件</title> <script type="text/javascript"> function btClick(){ alert("按钮被鼠标点击了!"); } function textOnmouseover(){ alert("鬼子进村了!"); } function textOnfocus(){ alert("文本框获取了焦点!"); } </script> </head> <body> <!-- 创建一个input标签 type="botton" 给botton绑定一个鼠标点击事件 给input标签增加一个属性:onclick="事件触发后的响应行为(函数)"; 事件源:input标签 事件:点击事件 onclink 响应:调用了一个函数叫btClick() --> <input type="button" value="按钮点击事件" onclick="btClick()"/> <!-- 给文本框增加一个鼠标的移入事件 事件源:input标签 事件:onmouseover 鼠标被移到某元素之上 响应:调用了一个函数叫textOnmouseover() --> <input type="text" placeholder="请输入用户名" onmouseover="textOnmouseover()"/> <!-- 给文本框增加获取焦点事件事件 事件源:input标签 事件:onfocus 元素获得焦点 响应:调用了一个函数叫textOnfocus() --> <input type="text" placeholder="请输入用户名" onfocus="textOnfocus()"/> </body> </html>
1.5表单验证案例	
	5.1案例需求:
     对用户名进行验证,要求必须填写
 5.2相关知识点
     DOM操作
       document.getElementById()获取页面中的标签元素
       属性: value 表达元素的value属性值
       属性:innerHTML 向元素体添加内容
       属性:style 改变元素的样式
	   
<script type="text/javascript"> /* * 用户名校验案例 * 给from表单增加一个事件 * onsubmit 当表单提交时触发该事件---注意事件源是表单form * onsubmit事件的响应结果如果是false则不提交表单 * onsubmit事件的响应结果如果是true则会把表单提交到服务器的某个java程序中 */ function formCheck(){ /* * 获取用户输入的用户名 * 对用户的输入的用户名进行判断 * 如果是空字符串 * 给用户提示错误信息 * 方法返回false,不让表单提交 * 如果不是空字符串 * 方法返回true,让表单提交的服务器 */ //获取用户输入的用户名 //获取username对象 var usernameELe = document.getElementById("username"); //获取username对象的value值,才是用户在文本框输入的值 //alert(usernameELe);//[object HTMLInputElement] var usernameValue = usernameELe.value; //alert(usernameValue); //对用户的输入的用户名进行判断 if(usernameValue==""){ //如果是空字符串 //给用户提示错误信息 //alert("用户名不能为空!"); //获取td对象 errorMessage var tdEle = document.getElementById("errorMessage"); //给td对象增加一个标签体 可以使用document的属性innerHTML tdEle.innerHTML="用户名不能为空"; //给td标签增加一个样式,红色 tdEle.style.color="red"; //方法返回false,不让表单提交 return false; }else{ //如果不是空字符串 //方法返回true,让表单提交的服务器 return true; } } </script>