一、函数
函数,是一段完成“指定功能”的已经“命名”的代码段。
函数只有“调用”才能使用到,通过“命名”调用。 JavaScript中函数的特性:可以在声明之前调用,也可以在声明之后调用。
test();
function test(){
功能段(一条,或多条)
}
test();
1、函数名(匿名函数可以不用命名,直接调用)
2、参数。根据需要使用参数
3、函数体。可以实现的功能
4、返回值。可以没有返回值
函数名不加()时,这个变量代表整个这个函数。
加()时,代表调用函数
函数作为参数传递给另一个函数时,用药不加()的模式,因为不是调用,而是传递变量。
回调函数:在函数中作为参数的函数,可以用不加()的函数名,也可以用匿名函数,直接放入函数的声明
使用情况:当函数的功能需要多样化,普通参数已经不能满足实现功能的情况下,使用毁掉函数来解决这一问题
JavaScript是基于对象的操作方式(所有对象都只是使用形式,没有类的概念--封装、多态、继承),而不是面向对象的语言.
我们自定义的所有函数都是windows对象的子函数,可以通过Windows.xxx调用函数。只是默认Windows对象可以省略。
JavaScript中有许多已经定义好的函数可以直接通过Windows对象调用。除了Windows对象,JavaScript还封装了其他对象
二、对象解析:
Global对象的方法:
1、escape(charString) :将字符串charString编码。
2、unescape(charstring) :将字符串charString解码
3、parseInt(numString, [radix]) : 将numString转换成整数, radix代表进制,默认为0x,10进制
4、parseFloat(numString):将numString转换为浮点数
5、isFinite(number):判断number是否为NaN 、负无穷或正无穷,如不是,返回true。
6、isNaN(numValue),如果值是 NaN,返回true
7、eval(codeString) 检查并执行代码(字符串)
三、对象的声明和操作:
1、JavaScript中对象的概念
JavaScript的对象只是将一些相关的属性和函数整合到一起,方便使用,相当于就是一些操作的整体
比如:
字符串对象,将所有跟字符串有关的操作整合到一个整体里面,将此整体称为字符串对象。
数学对象、数组对象、时间对象
2、对象中的内容:
1)属性(变量)
2)方法(函数)
3、对象的运用
1)声明对象
2)使用对象
3)使用系统的对象(浏览器自带的对象)
四、自定义对象
对象相当于是一个容器。需要给一个自定义名字。因为使用时要new+ 对象()来创建对象实例。
自定义对象有三种:
1、动态对象 (少用)
function Play(){
}
var p = new Play();
//属性
p.width = 300;
p.height = 200;
p.num = 4;
p.autotime = 3;
//方法
p.autoplay = function(){
alert('----play---');
}
p.test = function(){
}
alert(p.width);
p.autoplay();
2、封装对象
function Play(){
var p = new Object();
//属性
p.width = 300;
p.height = 200;
p.num = 4;
p.autotime = 3;
//方法
p.autoplay = function(){
alert('----play---');
}
p.test = function(){
}
return p;
}
var p = Play(); //封装好后可以不用new,直接调用即可
alert(p.width);
p.autoplay();
以上对象也可以动态添加属性和方法
3、用传参的形式定义对象的初始化(相当于构造函数)
function Play(width,height,num,autotime){
this.width = width;
this.height = height;
this.num = num;
this.autotime = autotime;
this.autoplay = function(){
alert("#####");
}
this.test = function(){
}
}
var p = new Play(3000,200,8,3);
alert(p.width);
p.autoplay();
五、对“对象”的操作
1、将“对象”遍历:
1)自定义对象的遍历:
for(var pro in p){
document.write('p'+pro + '=' + p[pro]+'<br>');
}
2)系统对象的遍历:
for(var pro in document){
document.write('document.'+pro +'='+ document[pro]+'<br/>');
}
2、内嵌对象with
with(对象)(){
对象. 属性;
对象. 方法;
}
调用对象的属性和方法时,可以省去对象,默认为本对象的this