使用JavaScript进行面向对象开发 互动版

在线工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 可编程3D场景编辑器

原始对象的封装

不难发现的一点是,通过上面的方法定义的对象,缺少了复用性。也就是说,我们每次都要写name、age、isWorking等等等等,才能创建一个新的对象实例,这肯定是不合理的。

为了能够得到更好的封装效果,我们可以通过一个function来统一地构建一个对象的实例,比如:

    function newWorker(name,age){
        return {
            name : name,
            age : age,
            isWorking : false,
            startWork : function(){
                //come code here;
            }
        };
    };

通过一个function的封装,我们可以每次获得一个相同结构的实例。