【JavaWeb】03 JavaScript(一)简介

(重点)

JavaScript简介

是基于对象和事件驱动的语言,应用于客户端。
基于对象:提供好了很多对象,可以直接拿过来使用。
事件驱动:html做网站的静态效果;JavaScript做动态效果,经由事件驱动表现出来。

js的特点:

  1. 交互性:信息的动态交互
  2. 安全性:js不能访问本地的磁盘文件
  3. 跨平台性:只要有能够支持js的浏览器就可以运行

js和java的区别:

  1. java是sun公司开发的,现在是oracle。js是网景公司开发的。
  2. js是基于对象的,java是面向对象的。
  3. java是强类型语言,js是弱类型语言。
  4. java需要先编译才能执行,js直接可以执行。

JavaScript组成

  1. ECMAScript: 由ECMA(欧洲计算机协会)制定的js的语法
  2. BOM:broswer object model:浏览器对象模型
  3. DOM:document object moodel:文档对象模型
js和html的两种结合方式
  • 使用一个标签script,在其中写入js代码
<script type="text/javascript">
	alert("框里内容");//页面弹出一个警告的框
</script>
  • 使用script标签引入外部js文件
<script type="text/javascript" src="js文件路径">	
</script>

使用第二种方式的时候注意,此时不再在script里写代码,不会被执行

js的原始类型和声明变量
  • 定义变量,都使用关键字var
    js的原始类型(五个)
    string:字符串 var str="abc";
    number:数字类型 var num=666;
    boolean:true和false var flag=true;
    null:表示对象的引用为空,对象的占位符 var date=new Date();
    undifined:定义一个变量,没有赋值 var s;

  • typeof(变量名称)可用于查看变量类型

js的语句

if判断语句:和java中使用相同
switch语句:java只支持byte short char int String(1.7)类型。js支持所有数据类型,写法与java相同

<script type="text/javascript">
	var a=10;
	switch(a)
	{
		case 3:
			alert("3");
			break;
		case 4:
			alert("4");
			break;
		default:
			alert("other");
	}
</script>

循环语句:while,for 用法同java(局部变量记得用var定义即可)

document.write(“内容”);直接向页面输出

js的运算符
  1. 数值的操作
    在java中
int j=123;
ja=j/1000*1000;//得到的ja为零

而在js中,不区分整数和小数

var j=123;
js=j/1000*1000//得到的js为123
  1. 字符串的加减
    在js中,字符串为数字时,相减执行减法运算;不为数字时相减得到NaN。
var str="456";
alert(str+1);//java和js都得到4561
alert(str-1);//js得到455
  1. 布尔类型的加减
    真为1,假为0
var flag1=true;
alert(flag1+1);//得到2
var flag2=false;
alert(flag2+1);//得到1
  1. 两个等号和三个等号
    两个等号==比较的是值,三个等号===比较值和类型
var str="3";
if(str==3){alert("相等")}//结果
else{alert("other")}

if(str===3){alert("相等")}
else{alert("other")}//结果
js的数组

定义方式(三种)
1. var arr=[1,“aa”,true]
2. 使用内置对象Array:var arr=new Array(5);arr[1]=“bb”;//数组长度是5,后续可以存值
3. 使用内置对象Array:var arr=new Array(3,2,5);//数组元素是3,

  • 与java不同,可以存入任何类型。
  • 数组名.length可以获取数组长度。
  • 数组的长度是可变的。
js的函数

定义方式(三种)
1. 使用关键字function function 方法名(参数列表){}返回值有无都可以,不用声明;参数列表中不写var
2. 匿名函数。function(参数列表){} 调用时为其起名,如:var name=function(参数列表){}
3. (了解)动态函数。使用js一个内置对象Functionvar name=Function("参数列表","方法体和返回值")称为“动态”是因为可以通过参数列表、方法体单独命名并传入Function。

题目:js是否存在重载?
1.js的函数不存在重载。
2.同函数名,调用后加载的方法。传入的参数少了返回NaN,多了则只取前几位使用,每次传递的全部参数都会暂时保存到arguments数组中。
3.由以上原理知,可以通过其他方法模拟重载。
function add1(){
	if(arguments.length==2){
		return arguments[0]+arguments[1];
	}else if(arguments.length==3)
		return arguments[0]+arguments[1]+arguments[2];
	}
}
js的全局变量和局部变量

全局变量:在script标签里定义的变量,在页面的js部分都可以使用。(即页面其他script标签里也可以使用)
局部变量:方法内部定义的变量,只能在方法内部使用

调试工具:IE自带了一个调试工具,IE8及以上版本中,按F12,可以在页面下方看到控制台提示

script标签的位置

建议放在</body>的后面,因为html中代码是逐行读取,放在调用值的前面时还没有解析到这个值。为了保证所有调用都成功,放在最后。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值