一、对象的定义
1、用var 创建一个对象:
var car = "Fiat";
2、用var 创建一个对象,但对象可以包含多个值(多个变量)。
var car = {type:"Fiat", model:500, color:"white"};
3、使用new Object() 创建对象
person=new Object();
person.firstname="John";
person.lastname="Doe";
4、使用够造函数创建对象
function person(firstname,lastname,age,eyecolor){
this.firstname=firstname;
this.lastname=lastname;
this.age=age;
this.eyecolor=eyecolor;
function changeName(name) //添加对象方法
{
this.lastname=name;
}
}
创建 JavaScript 对象实例:
var myFather=new person("John","Doe",50,"blue");
二、函数
1、函数的创建
function myFunction(a, b) {
return a * b;
}
2、函数表达式
var x = function(a,b){return a*b};
var z = x(3,9);
console.log(z); //结果为27
在函数表达式存储在变量后,变量也可作为一个函数使用
3、构造函数 (关键字 new function() 定义)
var resulte = new Function ("a", "b","return a * b");
var test = resulte (4, 3);
console.log(test); //结果为12
在 JavaScript 中,很多时候,你需要避免使用 new 关键字。
4、自调用函数
函数表达式可以 “自调用”。
自调用表达式会自动调用。
如果表达式后面紧跟 () ,则会自动调用。
(function (name) {
console.log(name); // 我将调用自己,执行结果为Tome
})('Tome');
后面的()可以进行参数传递,其内声明的值会自动传递到function的参数中使用如上这种自调匿名函数不会产生任何的全局变量
5、自行重写函数
function a(){
alert('A');
a = function(){
alert('B')
};
}
a(); //执行结果为A
a();//执行结果为B
第一次调用a()时,执行alert(“A”);第二次调用a()时,执行alert(“B”)。因为在第二次执行该函数时,其将全局变量a重新定义了
6、arguments对象
在javascript中,不需要明确指出参数名,就能访问它们
function hi(){
if(arguments.length==1){ //用arguments.length可以访问参数的个数
alert(arguments[0]); //用arguments[0]可以访问第一个参数,如此类推。
}
else if(arguments.length==2){
alert(arguments[0] + arguments[1]);
}
}
hi('A','B'); //执行结果为AB