浅谈JavaSccript函数与对象
函数
解剖函数
1 function One(leve1 , leve2){ 2 //code 3 return leve1+leve2 4 }注释:
形参不需要加上类型;
return语句为可选,没有return语句的函数返回undefined;
局部变量与全局变量
在函数内声明:局部变量
在函数外声明:全局变量
向一个新变量名赋值时并没有使用var:这个变量会变为新的全局变量
函数可以作为值
形式1:
1 function init(){ 2 alert("One") 3 } 4 5 window.onload = init;
形式2:
1 window.onload = function(){ 2 alert("One"); 3 }
注:以上两种方式,都能让浏览器提示:One。
对象
对象的引用
将一个对象赋至变量时,这个变量会包含这个对象的一个引用,而不是对象本身。
调用一个函数传入对象时,实际上是只传递了对象引用(拷贝一份引用副本,传给形参,指向对象,即两个引用指向了同一对象)
创建对象
1 var dog = { 2 name : "myDog", 3 weight : 40, 4 bark :function(){ 5 alert("woof!"); 6 } 7 } 8 dog.bark();
注:每一个属性(除了最后一个)后都要有“,”。
构造函数构造对象
1 function Dog(name,weight){ 2 this.name = name; 3 this.weight = weight; 4 this.bark = function(){ 5 if(this.weight > 25){ 6 alert(this.name + "Woof!"); 7 }else{ 8 alert(this.name + "Yip!"); 9 } 10 };//这里也不能忘了分号 11 } 12 var myDog = new Dog("hello","18"); 13 myDog.bark();