js是一种面向对象编程的语言,那么日常中什么样的编码方式属于面向对象,什么又是函数式编程呢?
可以分别举例吗?
这是我理解的函数式编程:
var page = {
init : function(){
this.onLoad();
this.bindEvent();
},
onLoad : function(){
code here;
},
bindEvent : function(){
code here;
}
}
$(function(){
page.init();
});
除了面向对象,函数式之外,还有一个面向过程。常用语言中,这三种方法都是混用的,并不是在用哪一种。
一个例子
可以看出来,OOP 就是在说对象干什么;函数式就是在不断的计算(使用 Excel 公式的时候就是这个感觉);当调用对象方法得到一个计算结果,再基于这个结果继续调用后续方法的时候(链式),严格的说是 OOP,但也具备了函数式连续运算的特征,所以可以看作是有机结合。