
JavaScript里面什么时候才需要new一个对象?new是什么意思呢?
3个回答
展开全部
这个涉及到面向对象编程中,对象和类的概念。(目前很流行的编程概念,C#,JAVA等语言,都依靠这个概念)
对于这个概念,你可以笼统的理解为,“类”就是一部机器,而“对”象就是由机器生产出来的产品。new的命令就是让机器生产出一个产品来,然后程序员再去使用这个产品。
当然了,这个产品,可以有自己的属性,例如面包机(类),生产了一块面包(new了一个对象)出来,那么这个面包,是有体积的属性,有颜色的属性,有香味的属性(对象的属性一样)。
-----------
另外,人是可以对面包机进行设置的(改造类),使其生产出来的面包,全部都是圆型或全部都是方型的(对象获取了类的属性)。人也可以在面包生产出来之后,再改造个体的属性(对象是可以后期改变属性的),比如你要把某个面包压扁成面饼,话说批萨是否由此诞生。
----------
再扩展点来说,机器是可以生产机器的(类可以派生类,继承类),就像流水线机器,生产了一个又一个的面包机(大类new了小类),每个面包机,再去生产面包……
=======================
综上所述,这些都是为了帮你理解类,对象,为什么new,这些说明,不是很全面,也不是非常有帮助的程序描述,仅仅只是带你入门而已。
JS其实真正是基于对象的编程,而非面向对象的编程,概念来说是都一样,但是大多初级JS的程序员,较少的去new一个对象,都是依靠程序内建已经new好的对象,去操作他们。相关的知识,你还可以去了解一下DHTML等。
对于这个概念,你可以笼统的理解为,“类”就是一部机器,而“对”象就是由机器生产出来的产品。new的命令就是让机器生产出一个产品来,然后程序员再去使用这个产品。
当然了,这个产品,可以有自己的属性,例如面包机(类),生产了一块面包(new了一个对象)出来,那么这个面包,是有体积的属性,有颜色的属性,有香味的属性(对象的属性一样)。
-----------
另外,人是可以对面包机进行设置的(改造类),使其生产出来的面包,全部都是圆型或全部都是方型的(对象获取了类的属性)。人也可以在面包生产出来之后,再改造个体的属性(对象是可以后期改变属性的),比如你要把某个面包压扁成面饼,话说批萨是否由此诞生。
----------
再扩展点来说,机器是可以生产机器的(类可以派生类,继承类),就像流水线机器,生产了一个又一个的面包机(大类new了小类),每个面包机,再去生产面包……
=======================
综上所述,这些都是为了帮你理解类,对象,为什么new,这些说明,不是很全面,也不是非常有帮助的程序描述,仅仅只是带你入门而已。
JS其实真正是基于对象的编程,而非面向对象的编程,概念来说是都一样,但是大多初级JS的程序员,较少的去new一个对象,都是依靠程序内建已经new好的对象,去操作他们。相关的知识,你还可以去了解一下DHTML等。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询