大家写JS的更倾向于创建Object还是Function对象?
欢迎大家讨论下:愿意创建Object还是Function对象?什么情况下愿意?为啥呢?
------解决方案--------------------如果是存储数据 视情况用 Array and Object
如果是对数据处理 操作等 用Function
------解决方案--------------------该创建什么就创建什么,存储数据没理由让我搞个function
------解决方案--------------------这个按照需求来吧,该用什么就用什么,如果能有object实现的,就没必要用function
------解决方案--------------------我更倾向于不创建对象
------解决方案--------------------自己用得随手就好,object的好处就不用new,但是不利于多实体,function要new个instance,可以有多个实体
------解决方案--------------------我更倾向于创建object对象,javascript本来就是面向对象语言
------解决方案--------------------
还是要根据需求来定。前提是知道两种方法的区别。
定义后
Object不能再使用new创建对象实例,可以赋值给其他变量,多个变量同时引用一个对象,或者克隆对象
Function可以使用new创建多个对象实例,使用时互不影响,但是使用内存也会更多
继承
Object无法继承,除非用复制的方式来实现
Function可以实现
toString和valueOf
Object,如果你不实现它的代码,别人无法通过toString、valueOf查看到你的代码
Function默认情况下,toString、valueOf是可以看到function的代码的
prototype原型问题
给Object原型增加方法或属性,new function出来的对象也同样有这样的方法——因此这是扩展通用对象功能的好地方
给Function原型增加方法或属性,Object实例对象不会有这些方法和属性
String、Number、Boolean对象不支持引用传递。
------解决方案--------------------用简单的方式写就行了。所适应的变化不是很大的话,用OO方式写反而增加代码量,不合算。