Javascript学习笔记

Javascript学习笔记

是一门程序设计语言

基于对象和事件驱动语言(点击之类的),用于客户端,不同于jsp是用在服务端的。

特点:

1,交互性

2,安全性(不允许直接访问硬盘)

3,跨平台(只要能解释JS的浏览器就可以执行,和平台无关。)

Javascript和Java之间的关系

Java和Javascript就像雷锋和雷峰塔的关系一样

1,Javascript基于对象,Java面向对象

2,Javascript解释执行,Java要先编译在执行。

3,Javascript弱类型,Java强类型。

Javascript和html结合方式

1,将javascript代码封装到<script>标签中

<script type="text/javascript">
  	alert("Hello Javascript");
</script>

2,将javascript代码封装到js文件中,并通过<script>标签中的src属性进行导入。

注意:通过<script>中的src属性指定导入js之后,标签内部的js将不会执行。

<script type="text/javascript" src="demo.js"></script>

Javascript语法

1,关键字

2,标识符

3,注释

4,变量:标记一片内存空间

5,运算符

6,语句

7,函数

8,对象


5,运算符

<script type="text/javascript">
	//算术运算符
	var  x = 4235;//弱类型
	alert(x/1000*1000);//输出为4235,并不是4000
	alert("12"+1);//121
	alert("12"-1);//11
	alert(true+1);//2   js中false就是0或者null,非0非null就是true,默认用1表示。
	//逻辑运算符 && ||
	//位运算符 & | >><< >>>按位运算
	var c = 6;
	alert(c&3);//2
	alert(5^3^3);//5 异或同一个数,等于本身
	alert(c>>1);//3  右移1位 除以2的1次方
	alert(c<<2);//24 左移2位 乘以2的平方
	//三元运算符
</script>


一些细节:

a.undefined:未定义,就是一个常量

b.获取变量类型:

<script type="text/javascript">
	typeof("abc");//string 为什么是小写
	typeof('9');//string
	typeof(true);//boolean
	typeof(2.5);//number
	typeof(78);//number
</script>




6,语句

<script type="text/javascript">
	//顺序结构
	//if语句
	var x = 3;
	if(4 == x)//这样写可以预防错误
	{
		alert("no");
	}else
	{
		alert("yes")
	}
	//switch语句
	var x = "abc";
	switch(x)
		case "kk":
		alert("a");
		break;
		case "abc":
		alert("b");
		break;
		default:
		alert("c");
		break;//可省略
	//循环结构
	//while语句
	var x = 3;
	while(x<3){
		alert("x="+x);
		//将数据直接写到当前页面中  如果输出的字符串是html标签,此时浏览器就可以进行解析
		document.write("x="+x+"<br/>");
		x++;
	}
	//for语句 
	for(var x = 0;x<3;x++){
		document.write("x="+x);
	}
		//break:跳出选择结构,跳出循环结构
		//continue:结束本次循环,执行下次循环
	//带标号的循环。直接break w所表示的循环
	w:for(var x = 0;x<3;x++){
		for(var y = 0;y<4;y++){
			document.write("x="+x);
			break w;//跳出w表示的循环 continue w;  跳出w的当前循环,并进行下一次循环
		}
	}

</script>




数组

1,数组长度是可变的

2,数组的元素类型是任意的

建议在使用数组时使用同一类型的数据,操作方便


<script type="text/javascript">
  	//定义方式1	
	var arr = [];
	var arr1 = [1,2,3,5];
	alert(typeof(arr));
	alert("len="+arr.length);
	//定义方式2
	var arr = new Array();//与第一种一样
	var arr1 = new Array(5);//定义数组长度为5
	var arr2 = new Array(4,5,6);//定义一个数组,元素是4,5,6
	//遍历
	for(var x = 0;x<arr.length;x++){
		document.write("arr[x]")
	}
</script>







7,函数

定义函数的格式

通过关键字来定义

function 函数名(参数列表){}

细节问题

1,只要使用了函数名称,就是对函数的调用

2,函数中有一个数组在对传入的参数进行存储,数组就是arguments,遍历该数组就可以拿到所有的传入参数

3,函数名就是函数对象的引用变量,如果直接把函数对象用字符串输出的话,那输出的结果就是函数的代码,如果把函数名赋值给另一个变量的话,那么就会有两个引用变量指向同一个函数对象。

<script type="text/javascript">
	//定义一个函数
	function demo()
	{
		alert("demo run");
		return;
	}
	demo();//函数调用
	//定义加法
	function add(x,y)
	{
		return x+y;
	}
	var sum = add(4,5);
	alert("sum="+sum);
	//相关细节问题
	function show(x,y)
	{
		alert("len="+arguments.length)
		alert("x="+x+"..y="+y);
	}
	show(4,5,6,7,8);

	function getSum()//函数名就是函数对象的引用变量,如果直接把函数对象用字符串输出的话,那输出的结果就是函数的代码
	{		//如果把函数名赋值给另一个变量的话,那么就会有两个引用变量指向同一个函数对象
		return 100;
	}
	var sum1 = getSum();
	alert("sum1="+sum1);
	function show1()
	{
		alert("show1 run...");
	}
	alert(show1());//这个语句会先运行show1(),所以会先弹窗 show1 run...  然后再显示 show1 这个函数的运行结果 由于show1没有返回值,所以会再输出undefined

	alert(show1);//show1 是一个引用变量,指向了show1函数对象,这个语句会将 show1的函数代码弹出


</script>


动态函数

使用较少

使用的是js中的一个内置对象Function

Function中的参数全是字符串,可以通过外部赋值来改变函数的形参列表和具体函数功能

<script type="text/javascript">
	var add = new Function("x,y","var sum; sum = x+y; return sum;")
	var he = add(4,8);
	alert("he="+he);
</script>

匿名函数

函数的简写形式


<script type="text/javascript">
	var add3 = function()
	{
		return a+b;	
	}
	alert(add3(4,5));

</script>


全局变量和局部变量

















待续。。。。。

<script type="text/javascript">
	
</script>








评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值