Javascript基础笔记小记

/*
1、javascript 的简介
* 是基于对象和事件驱动的语言,应用于客户端
- 基于对象:
** 提供好了很多对象,可以直接拿过来使用
- 事件驱动:
** html做的网站是静态效果,javascript 做的网站可以实现动态效果
- 客户端:专门指的是浏览器

*js有三大特点:
	1、交互性:
		-信息的动态交互
		
	2、安全性:
		-js不能访问本地磁盘文件
	
	3、跨平台性:
		
		- java里面的跨平台性需要安装虚拟机
		
		-js的跨平台性只要能够支持js的浏览器,都可以运行

*js 和java的区别
	1、java是sun公司,现被oracle收购,js是网景公司,属于不同公司开发的
	2、js是基于对象,java是面向对象
	3、java是强类型的语言,js是弱类型的语言。
			-例如:在java 中的 int i = "10"; 是错误的写法
				   而在js 中 var i = 10 ; var m = "10"; 是正确的写法
	4、js只需要解析就可以执行,而在java 中,需要先编译文件后再执行
*js 的组成:
	三部分组成:
	1、ECMAScript
		- ECMA :欧洲计算机协会
		- 由ECMA组织制定的js的语法,
	2、BOM
		- broswer object model:浏览器对象模型
		
		
	3、DOM
		- document object  model:文档对象模型

2、js 和 html 的结合方式(两种):
第一种:
- 使用一个标签

	第二种:
		- 使用script标签,引入一个外部的js文件	
			<script type="text/javascript" src="js文件路径"> </script>
	
		-使用第二种方式的时候,在script标签中的代码将不会执行

3、js的原始类型和声明变量:
** java 的基本数据类型 byte short int long float double char boolean

** 定义变量都使用关键字 var

** js 的原始类型 
	- string   	字符串类型
		var str = "abc";
	
	- number	数字类型
		var mum = 123;
	
	- boolean	true 和 false
		var fal = true;
		
	- null		
		-- var date = new Date();
		-- 获取对象的引用,null 表示对象引用为空,所有对象的引用也是object
	
	- undifined 
		** 定义一个变量,没有赋值
		** var A;
	
	typeof() 查看变量当前的数据类型

4、js的语句:
- java 里面的语句
** if 判断
** switch 语句
** 循环语句 for、while、do-while

-js里面的语句
	** if 判断语句:
	** switch语句
		 -- java 里面支持数据类型 string 在jdk1.7 开始支持
		 -- js 里面支持所有的数据类型
		 	switch(a){
				care 5:
					break;
				care 6:
					break:
				default:
					
				}
		
	** while 循环:
			var i = 5;
			while(i>=1){
				alert(i);
				i--;
			}
	
	** for 循环
		-- java 中的写法
			for (int i=0; i <=10 ; i++){
				执行代码块;
				} 
		-- js 中的写法
			for (var i=0; i<=10 ;i++){
				执行代码块;
				}
*** 需要注意的是一个等号表示赋值运算,两个等号表示条件判断,
***	另外 i++(先执行再加一)和 ++i(先加一再执行)与java 中的效果是一样的

5、js 运算符
** += :x +=y ==> x= x + y;

** js不区分整数和小数
	var j = 123;
	alert(j/1000*1000);
	// 在java中,上面的输出为0,因为默认的数据为整数,所以0/100 =0.123就是 0,0*1000还是等于0
	// 在js中是不区分整数和小数的,也就是说只有number 没有float 和 duble;所以结果等于 123
	
** 字符串的相加和相减的操作
	var str = "456";  
	
	** 如果相加的时候,做的是字符串拼接的操作
	alert(str+1); // 在java里操作的结果等于 :4561 字符串的拼接,在js里面也是4561
	
	** 如果是相减的时候,做的是数学运算,
	alert(str-1); // 在java里面这样的运算式子是不成立的,而在js中,结果等于455
	
	// 如果 str里面不为数字,执行相减的运算时,将提示NaN
	var str = "abc"
	alert(str - 1);

** boolean 类型的相加相减操作
	
	-- 如果flag = true ,相当于 flag =1
	   如果flag = false ,相当于 flag = 0
	   所以 flag + 1 或 flag - 1 跟数学运算是相同的
	   
	   
** == 和 === 区别:
	var aa = "5";
	
	// == 比较的是值,输出为 5
	if(aa==5){alert(5+"== 比较的是值,输出为 5");}else{alert("other");} 
	
	// ===比较的是值和类型,输出为 other 
	if(aa === 5){alert(5);}else{alert("other:"+"=== 比较的是值和类型,输出为 other ");}

6、实现99乘法表:
**引入知识
– 直接向页面输出的语句(可以把内容显示在页面上,相当于java中的System.out.println())
** document.write();

**99乘法表有9行9列
	for(var i =1;i<10;i++){	
		for(var j = 1;j<=i;j++){
			document.write(j+"*"+i+"="+j*i+" ");
		}
		document.write("<br/>")
	}
** 在document.write("")中嵌套html代码时,如果需要给html标签设置属性值,那么属性值用单引号括起

	-- 例如 document.write("<table border='1' bordercolor='orange'>");
	
	--  document.write() 可以输出变量,也可以输出html代码:

7、js的数组
** 什么是数组
- 使用变量 ,var m = 10;
- java 中的数组定义 int[] arr = {1,2,3};
- js中数组的定义:
第一种:var arr = [1,2,3,“4”,true];
第二种:使用内置对象Array对象
var arr1 = new Array(5); // 定义一个数组,长度为5
arr1[0] = 1; // 对每一个进行赋值

		第三种:使用内置对象Array()
				var arr2 = new Array(3,4,5)
	
** 数组中的属性 length
	-- length属性:获取数组的长度

** 数组可以存放不同的数据类型

8、js的函数(方法):
– 在java中定义方法:
public 返回值类型 方法名称(参数列表){ 方法体;返回值}
public int add(int a,int b){
int sum = a + b;
return sum;
}
– js 中定义方法(函数)有三种方式:
第一种方式:
*** 使用到一个关键字 function
– function 方法名(参数列表){
方法体;
返回值;(返回值可有可无,根据实际需要设置)
}

	第二种方式:
		*** 匿名函数:
		var func =function (参数列表){
				方法体;
				返回值;
			}
			
	 	*** 调用的时候也是func(参数)
	
	第三种方式:
		*** 动态函数
		*** 使用到js 里面的一个内置对象 Function
			var func = new Function("参数列表","方法体和返回值");
			
			-- 动态函数的实现代码:
				var chanshu="x,y";
				var fanfati="var sum=x+y;return sum;"
				var func4 = new Function(chanshu,fanfati);
				alert(func4(7,8));

9、js的全局变量和局部变量:
** 全局变量: 在script标签里面定义一个变量,这个变量在页面中js 部分都可以使用

		-- 在方法的外部使用,在方法的内部使用,在另外一个srcipt标签中使用
		
** 局部变量: 在方法内部定义一个变量,只能在方法内部使用
	
		-- 只在局部使用,在方法中定义的变量,只能在方法中使用!

10、script 标签的位置
** 一般script 都放在 body结束标签的后面,避免script在取值的时候出现错误
– 程序的解析是从上到下的,所以必须保证script 标签中需要获取的值在script标签之前已经存在




*/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值