JavaScript函数与对象

本文详细介绍了JavaScript中函数的创建方法,包括函数声明、表达式和构造器,并探讨了对象的定义方式及其属性和方法的添加。同时,还介绍了如何在JavaScript中实现类的概念。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JavaScript函数与对象的关系和创建方法

1、函数的定义(创建)

方法1:函数声明(使用function关键字)

<script>
function fdemo1(param){
    alert("I'm fdemo1");
}
</script>

方法2:表达式
这种方法是将匿名函数绑定到一个变量上,使用方法和方法1定义的函数一样,可以完成函数递归调用

<script>
var fdemo2 = function(param){
    alert("I'm fdemo2");
}
</script>

方法3:函数构造器
函数Function()可以有任意多个参数,前面n-1个是被构造函数的参数,最后一个是被构造函数的函数体

<script>
var fdemo3 = new Function('param',"alert('I'm fdemo2');");
</script>

1、js对象(类似于java的类)的定义

js是面向对象语言,但没有直接对类或者对象的声明和定义,但js的函数就是最直接的对象,有属性,有方法
一个简单的构建一个对象的构造函数如下

function Demo(param){  
       var property1 = "属性1";//函数中定义的局部变量
       this.property2 = "属性2";//隶属于Demo这个对象(或者理解为类)的成员变量 
       this.fdemo = function(){//隶属于Demo这个对象(或者理解为类)的成员函数
           alert(this.property2);   
       }  
   }  

除了像上面那样直接在原始构造函数里定义属性和方法之外,js还支持在外部为对象添加属性和方法
添加静态方法:

   //同java静态方法一样,这里的静态方法只能通过类名来直接访问
   Demo.staticfunction = function(param){
       alert("我是类Demo的静态方法");  
   }  

添加原型方法(成员方法):

   //prototype原型是每个js函数一定义就具有的成员变量,它相当于这个类的本身的一个对象
   //直接给prototype添加成员方法就相当于是给java类中增加普通的成员方法
   Demo.prototype.prototypeFunction = function(param){  
       alert("I'm prototypeFunction, property2 = "+property2);
   }  

有两种方式访问,一种是

Demo.prototype.prototypeFunction(param);

另一种:

var demo4 = new Demo("demo4");
demo4.prototypeFunction("param1");

添加静态属性:

   Demo.staticProperty = 20; 

添加成员属性:

   Demo.prototype.property2 = "property2"; 

所有静态和成员的属性和方法访问方式都参考java的访问方式,只不过js多了一种直接通过Demo.prototype这个类似于静态成员变量的对象来直接访问

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值