详解JavaScript函数对象
作者:bea
函数 函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。 function One(leve , leve){ //code return leve+leve } 注释: 形参不需要加上类型; return语句为可选,没有return语句的函数返回undefined; 局部变量与全局变量 在函数内声明:局部变量 在函数外声明:全局变量 向一个新变量名赋值时并没有使用var:这个变量会变为新的全局变量 函数可以作为值 形式1:
函数
函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。
function One(leve , leve){
//code
return leve+leve
}
注释:
形参不需要加上类型;
return语句为可选,没有return语句的函数返回undefined;
局部变量与全局变量
在函数内声明:局部变量
在函数外声明:全局变量
向一个新变量名赋值时并没有使用var:这个变量会变为新的全局变量
函数可以作为值
形式1:
function init(){
alert("One")
}
window.onload = init;
形式:
window.onload = function(){
alert("One");
}
注:以上两种方式,都能让浏览器提示:One。
对象
JavaScript 中的所有事物都是对象:字符串、数值、数组、函数,此外,JavaScript 允许自定义对象。
对象的引用
将一个对象赋至变量时,这个变量会包含这个对象的一个引用,而不是对象本身。
调用一个函数传入对象时,实际上是只传递了对象引用(拷贝一份引用副本,传给形参,指向对象,即两个引用指向了同一对象)
创建对象
var dog = {
name : "myDog",
weight : ,
bark :function(){
alert("woof!");
}
}
dog.bark();
注:每一个属性(除了最后一个)后都要有“,”。
构造函数构造对象
function Dog(name,weight){
this.name = name;
this.weight = weight;
this.bark = function(){
if(this.weight > ){
alert(this.name + "Woof!");
}else{
alert(this.name + "Yip!");
}
};//这里也不能忘了分号
}
var myDog = new Dog("hello","");
myDog.bark();
PS:
1.什么是构造函数
构造函数 ,是一种特殊的方法。主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中。
这是我查阅相关资料的解释,解释的很书本化但意思表达的还是很清楚的。下面请看小例子:
代码如下:
代码如下:
var request = new XMLHttpRequest();
这句表达式是我们在使用AJAX技术时创建request对象时经常用到的。那么我们可以清楚的看到 “new XMLHttpRequest();” 这句话就是一个标准的构造函数!我们 “var” 声明了一个 “request” 对象,用构造函数 “new XMLHttpRequest();” 来初始化这个 “request” 对象为它赋初始值。所以我们可以知道:“与 ‘new' 运算符一起使用用来创建对象并初始化对象的‘函数'就是构造函数”。
比如我们常见的声明数组就是标准的构造函数:var array = new Array();
2.什么是实例化对象
代码如下:
var request = new XMLHttpRequest();
在面向对象的编程中,通常把用类创建对象的过程称为实例化。
上面我用红色和蓝色将解释的重点标了出来。说白了,实例化对象就是创建对象的过程!
那么什么是“类”呢?根据字面理解我们可以理解为“类型”。比如“蛋糕”,它是一个甜品的分类,也就是一个类型;那么起司蛋糕则是甜品中蛋糕这个分类的具体的个体,也就是对象。
我们知道在程序语言中,“类”是抽象的,我们没有办法来操作它或使用它的方法和属性,只有把这个类实例化成为一个对象,我们才可以去调用它的一系列方法和属性。其实这个也很好理解,在生活中抽象的东西我们没有办法看到它或者捕捉到它,那么自然我们也没有办法去使用它的一些功能,只有将抽象的东西具体到一个个,个体或实际的对象,我们才能清楚的理解或者认识它;编程亦是如此。因此,实例化对象就是由抽象到具体的过程,这个过程就叫实例化。
有用 | 无用
函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。
function One(leve , leve){
//code
return leve+leve
}
注释:
形参不需要加上类型;
return语句为可选,没有return语句的函数返回undefined;
局部变量与全局变量
在函数内声明:局部变量
在函数外声明:全局变量
向一个新变量名赋值时并没有使用var:这个变量会变为新的全局变量
函数可以作为值
形式1:
function init(){
alert("One")
}
window.onload = init;
形式:
window.onload = function(){
alert("One");
}
注:以上两种方式,都能让浏览器提示:One。
对象
JavaScript 中的所有事物都是对象:字符串、数值、数组、函数,此外,JavaScript 允许自定义对象。
对象的引用
将一个对象赋至变量时,这个变量会包含这个对象的一个引用,而不是对象本身。
调用一个函数传入对象时,实际上是只传递了对象引用(拷贝一份引用副本,传给形参,指向对象,即两个引用指向了同一对象)
创建对象
var dog = {
name : "myDog",
weight : ,
bark :function(){
alert("woof!");
}
}
dog.bark();
注:每一个属性(除了最后一个)后都要有“,”。
构造函数构造对象
function Dog(name,weight){
this.name = name;
this.weight = weight;
this.bark = function(){
if(this.weight > ){
alert(this.name + "Woof!");
}else{
alert(this.name + "Yip!");
}
};//这里也不能忘了分号
}
var myDog = new Dog("hello","");
myDog.bark();
PS:
1.什么是构造函数
构造函数 ,是一种特殊的方法。主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中。
这是我查阅相关资料的解释,解释的很书本化但意思表达的还是很清楚的。下面请看小例子:
代码如下:
代码如下:
var request = new XMLHttpRequest();
这句表达式是我们在使用AJAX技术时创建request对象时经常用到的。那么我们可以清楚的看到 “new XMLHttpRequest();” 这句话就是一个标准的构造函数!我们 “var” 声明了一个 “request” 对象,用构造函数 “new XMLHttpRequest();” 来初始化这个 “request” 对象为它赋初始值。所以我们可以知道:“与 ‘new' 运算符一起使用用来创建对象并初始化对象的‘函数'就是构造函数”。
比如我们常见的声明数组就是标准的构造函数:var array = new Array();
2.什么是实例化对象
代码如下:
var request = new XMLHttpRequest();
在面向对象的编程中,通常把用类创建对象的过程称为实例化。
上面我用红色和蓝色将解释的重点标了出来。说白了,实例化对象就是创建对象的过程!
那么什么是“类”呢?根据字面理解我们可以理解为“类型”。比如“蛋糕”,它是一个甜品的分类,也就是一个类型;那么起司蛋糕则是甜品中蛋糕这个分类的具体的个体,也就是对象。
我们知道在程序语言中,“类”是抽象的,我们没有办法来操作它或使用它的方法和属性,只有把这个类实例化成为一个对象,我们才可以去调用它的一系列方法和属性。其实这个也很好理解,在生活中抽象的东西我们没有办法看到它或者捕捉到它,那么自然我们也没有办法去使用它的一些功能,只有将抽象的东西具体到一个个,个体或实际的对象,我们才能清楚的理解或者认识它;编程亦是如此。因此,实例化对象就是由抽象到具体的过程,这个过程就叫实例化。
有用 | 无用
猜你喜欢
您可能感兴趣的文章:
- 跟我学习javascript的函数调用和构造函数调用
- 12种JavaScript常用的MVC框架比较分析
- 跟我学习javascript的函数和函数表达式
- 使用JQuery FancyBox插件实现图片展示特效
- uploadify多文件上传参数设置技巧
- 跟我学习javascript的var预解析与函数声明提升
- 跟我学习javascript的全局变量
- 浅析JavaScript访问对象属性和方法及区别
- 跟我学习javascript的基本类型和引用类型
- 简单实现限制uploadify上传个数
- 跟我学习javascript的隐式强制转换
- 跟我学习javascript的浮点数精度
- 跟我学习javascript的严格模式
- javascript中tostring()和valueof()的用法及两者的区别
- 关于javascript中dataset的问题小结
- javascript入门教程基础篇
- JavaScript中函数表达式和函数声明及函数声明与函数表达式的不同
- 浅谈JavaScript中的对象及Promise对象的实现
- javascript 中的 delete及delete运算符