JavaScript 富有表现力的编程:面向对象与一等公民函数
作者:纸飞机时间:2026-10-25 06:58:49浏览:530
本文探讨JavaScript中富有表现力的编程技巧,重点解析面向对象编程模式。通过构造函数与原型链的应用,阐述如何保存状态及封装方法以支持迭代开发。同时深入讲解函数作为一等对象的特性,包括Function类的实例化、原型方法的扩展以及闭包的应用,旨在提升代码的结构掌控力与灵活性。
JavaScript面向对象编程模式
正题:
1.1 JavaScript的灵活性
面向对象对象的Javascript编程模式:1、可以保存状态 2、具有对象内部才能调用的方法 3、对编写的程序更能掌握其结构,能经受的起迭代开发(个人认为)
代码如下:
// 构造函数,也可通俗理解为类
var Anim=function(){
...
}
// 类中的方法,利用JavaScript的原型机制
Anim.prototype.start=function(){
...
} 注:通常建议将方法放入原型中,因为原型一般用于存储不变且通用的内容
代码
代码如下:
Function.prototype.method=function(name,fn){
this.prototype[name]=fn;
}
var Anim=function(){
}
Anim.method("start",function(){alert("开始了")})
Anim.method("stop",function(){alert("停止了")})
var anim=new Anim();
anim.start();
anim.stop(); 函数作为一等对象与原型扩展
上述代码突显出以下几点:
1、所有function都是Function这个类的对象,例如 var f=new Function("alert();")
2、我们也可以往系统默认类原型中添加方法,但这不提倡,容易混乱
函数是一等对象:
匿名函数可以创建闭包(闭包将另开一个篇进行学习)
作者最新文章
JS动态构建复杂嵌套JSON对象的方法
2026-11-05 15:41:52
JS负数取余为什么是负数?详解余数与模运算区别
2026-11-05 13:34:41
JS 解压出现乱码或报错怎么解决?
2026-11-05 12:32:38
JS 中 startsWith、indexOf 与正则判断字符串前缀的对比
2026-11-04 22:19:43
JS解析Excel后怎么将数据转换为JSON格式
2026-11-04 20:58:28
