JavaScript是基于对象语言还是面向对象语言?讨论下。。

时间:2021-09-25 00:35:29
最近学习JavaScript,书中写到JavaScript是基于对象(Object-based)的编程语言,而不是面向对象的语言。
但是网上有些人说JavaScript是面向对象的语言。
一开始都把握搞糊涂了!~~
后来我才了解JavaScript有些地方还达不到面向对象的特性,但是 到底JavaScript是基于对象还是面向对象
希望大家能给我个明确的答复!~~

30 个解决方案

#1


这个无所谓是面向对象的语言还基于对象(Object-based)的编程语言.
就看你怎么理解了.
我认为JavaScript是基于对象(Object-based)的编程语言.
因为在浏览器中有许多JavaScript可以直接操作的对象.
但是JavaScript同样可以像其他面向对象的语言一样,
创建属于自己的专有对象,这是我的观点,希望与大家共同交流.

#2


这个无所谓是面向对象的语言还基于对象(Object-based)的编程语言.
就看你怎么理解了.我认为JavaScript是基于对象(Object-based)的编程语言.
因为在浏览器中有许多JavaScript可以直接操作的对象.
但是JavaScript同样可以像其他面向对象的语言一样,
创建属于自己的专有对象,这是我的观点,希望与大家共同交流.

#3


期待中~~

#4


引用 1 楼 kingwolf_JavaScript 的回复:
这个无所谓是面向对象的语言还基于对象(Object-based)的编程语言. 
就看你怎么理解了. 
我认为JavaScript是基于对象(Object-based)的编程语言. 
因为在浏览器中有许多JavaScript可以直接操作的对象. 
但是JavaScript同样可以像其他面向对象的语言一样, 
创建属于自己的专有对象,这是我的观点,希望与大家共同交流.

恩,我也这么认为。还有JavaScript好像也可以实现封装,继承,多态~
在实际的开发中,这些用的多吗?

#5


基于对象

#6


基于对象

#7


恩,我也这么认为。还有JavaScript好像也可以实现封装,继承,多态~ 
在实际的开发中,这些有必要用到吗?用的多不多

#8


用不用和什么时候用看境界了
像我们这种混口饭吃的飘过,难,
我是来做俯卧撑的

#9



引用月影的一段话:
说javascript是一种基于对象的语言,是一种正确而略显保守的判断,而说javascript不面向对象
,在我看来则是错误的认知。事实上有足够理由证明javascript是一种面向对象语言,只是与传统的
class-basedOO(基于类的面向对象)相比,javascript有它与众不同的地方,这种独特性我们称它为
prototype-basedOO(基于原型的面向对象)


#10


同意ls的

#11


我以前写JavaScript可是从来没考虑过用OOP的方式去编。。  都是需要什么解决什么,没那么高深哎。。
现在也许能够编写出面向对象支持的代码,这种写法对JavaScript以后的发展有影响不~~

#12



web离不开js,但永远不要指望js去做更多的事。

#13


確實,只能保守地認為,它是基于對象!

#14


引用 9 楼 s_liangchao1s 的回复:
HTML code
引用月影的一段话:
说javascript是一种基于对象的语言,是一种正确而略显保守的判断,而说javascript不面向对象
,在我看来则是错误的认知。事实上有足够理由证明javascript是一种面向对象语言,只是与传统的
class-basedOO(基于类的面向对象)相比,javascript有它与众不同的地方,这种独特性我们称它为
prototype-basedOO(基于原型的面向对象)

引用 12 楼 s_liangchao1s 的回复:
HTML code
web离不开js,但永远不要指望js去做更多的事。

很在理啊

#15


s_liangchao1s说的感觉像真理阿...
从我认识JavaScript到现在,感觉它的发展方向在不断的变化。
逐渐走出web世界进入桌面应用的领域也是有可能的,所以感觉JavaScript的发展不得不走高级语言的路子~
大家如何看待呢?

#16



javascript就是魔鬼,有能力的人会驾驭得很好,没能力的会被吃掉!
如果java可以把桌面应用做的很好,相信不会有人去冒险用js!
--今天喝大了 成诗人了  不容易

#17


月影说得很好

#18


很明显是基于prototype的 继承
一样可以通过 call  apply 实现继承
师傅教的 
哈哈

#19


引用 9 楼 s_liangchao1s 的回复:
HTML code
引用月影的一段话:
说javascript是一种基于对象的语言,是一种正确而略显保守的判断,而说javascript不面向对象
,在我看来则是错误的认知。事实上有足够理由证明javascript是一种面向对象语言,只是与传统的
class-basedOO(基于类的面向对象)相比,javascript有它与众不同的地方,这种独特性我们称它为
prototype-basedOO(基于原型的面向对象)

支持!
顶!

#20


无所谓面向对象的不是基于对象的

#21


引用 2 楼 kingwolf_JavaScript 的回复:
这个无所谓是面向对象的语言还基于对象(Object-based)的编程语言. 
就看你怎么理解了.我认为JavaScript是基于对象(Object-based)的编程语言. 
因为在浏览器中有许多JavaScript可以直接操作的对象. 
但是JavaScript同样可以像其他面向对象的语言一样, 
创建属于自己的专有对象

#22


Fireworks的批处理命令就是JavaScript的,所以JavaScript不仅仅是只能应用在Web领域,只要为你的应用程序加入JavaScript解析引擎,就可以让你的应用程序也支持JavaScript,微软msdn好像有这个说明文档。

#23


js不是面向对象的语言,只不过现在对其进行了扩展,使它具有了面向对象的性质罢了!

#24


  JavaScript语言是基于对象的(Object-Based),而不是面向对象的(object-oriented)。之所以说它是一门基于对象的语言,主要是因为它没有提供象抽象、继承、重载等有关面向对象语言的许多功能。而是把其它语言所创建的复杂对象统一起来,从而形成一个非常强大的对象系统。     虽然JavaScript语言是一门基于对象的,但它还是具有一些面向对象的基本特征。它可以根据需要创建自己的对象,从而进一步扩大JavaScript的应用范围,增强编写功能强大的Web文档。

#25


引用 14 楼 neo_yoho 的回复:
引用 9 楼 s_liangchao1s 的回复:
HTML code 
引用月影的一段话: 
说javascript是一种基于对象的语言,是一种正确而略显保守的判断,而说javascript不面向对象 
,在我看来则是错误的认知。事实上有足够理由证明javascript是一种面向对象语言,只是与传统的 
class-basedOO(基于类的面向对象)相比,javascript有它与众不同的地方,这种独特性我们称它为 
prototype-basedOO(基于原型的面向对象) 
 
引用 12 楼 s_liangch…

#26


再问个javascript和AJAX的区别
AJAX没学过,是不是AJAX要比javascript更先进?

#27


24小时后结贴,有回帖延迟2小时~~  谢谢大家的答复,都说的很明白~

#28


javascript是基于对象的,JAVA是面向对象的,基于对象和面向对象的区别在于基于对象是指内部已经定义了对象,你只要直接使用,不需要new的,比如js里面的object,window,document,等等都是写好,可以直接使用的,但是java中正常情况下你就必须先new 一个类,然后才能使用。相信已经够清楚了吧

#29


相信你看错题目了阿。。。 我没说JAVA... 是AJAX  小兄弟~~

#30


ajax包含于javascript,所用的技术完全是从javascript衍生出来的,并没有新的东西。可以说,ajax只是javascript的一个子类。

#1


这个无所谓是面向对象的语言还基于对象(Object-based)的编程语言.
就看你怎么理解了.
我认为JavaScript是基于对象(Object-based)的编程语言.
因为在浏览器中有许多JavaScript可以直接操作的对象.
但是JavaScript同样可以像其他面向对象的语言一样,
创建属于自己的专有对象,这是我的观点,希望与大家共同交流.

#2


这个无所谓是面向对象的语言还基于对象(Object-based)的编程语言.
就看你怎么理解了.我认为JavaScript是基于对象(Object-based)的编程语言.
因为在浏览器中有许多JavaScript可以直接操作的对象.
但是JavaScript同样可以像其他面向对象的语言一样,
创建属于自己的专有对象,这是我的观点,希望与大家共同交流.

#3


期待中~~

#4


引用 1 楼 kingwolf_JavaScript 的回复:
这个无所谓是面向对象的语言还基于对象(Object-based)的编程语言. 
就看你怎么理解了. 
我认为JavaScript是基于对象(Object-based)的编程语言. 
因为在浏览器中有许多JavaScript可以直接操作的对象. 
但是JavaScript同样可以像其他面向对象的语言一样, 
创建属于自己的专有对象,这是我的观点,希望与大家共同交流.

恩,我也这么认为。还有JavaScript好像也可以实现封装,继承,多态~
在实际的开发中,这些用的多吗?

#5


基于对象

#6


基于对象

#7


恩,我也这么认为。还有JavaScript好像也可以实现封装,继承,多态~ 
在实际的开发中,这些有必要用到吗?用的多不多

#8


用不用和什么时候用看境界了
像我们这种混口饭吃的飘过,难,
我是来做俯卧撑的

#9



引用月影的一段话:
说javascript是一种基于对象的语言,是一种正确而略显保守的判断,而说javascript不面向对象
,在我看来则是错误的认知。事实上有足够理由证明javascript是一种面向对象语言,只是与传统的
class-basedOO(基于类的面向对象)相比,javascript有它与众不同的地方,这种独特性我们称它为
prototype-basedOO(基于原型的面向对象)


#10


同意ls的

#11


我以前写JavaScript可是从来没考虑过用OOP的方式去编。。  都是需要什么解决什么,没那么高深哎。。
现在也许能够编写出面向对象支持的代码,这种写法对JavaScript以后的发展有影响不~~

#12



web离不开js,但永远不要指望js去做更多的事。

#13


確實,只能保守地認為,它是基于對象!

#14


引用 9 楼 s_liangchao1s 的回复:
HTML code
引用月影的一段话:
说javascript是一种基于对象的语言,是一种正确而略显保守的判断,而说javascript不面向对象
,在我看来则是错误的认知。事实上有足够理由证明javascript是一种面向对象语言,只是与传统的
class-basedOO(基于类的面向对象)相比,javascript有它与众不同的地方,这种独特性我们称它为
prototype-basedOO(基于原型的面向对象)

引用 12 楼 s_liangchao1s 的回复:
HTML code
web离不开js,但永远不要指望js去做更多的事。

很在理啊

#15


s_liangchao1s说的感觉像真理阿...
从我认识JavaScript到现在,感觉它的发展方向在不断的变化。
逐渐走出web世界进入桌面应用的领域也是有可能的,所以感觉JavaScript的发展不得不走高级语言的路子~
大家如何看待呢?

#16



javascript就是魔鬼,有能力的人会驾驭得很好,没能力的会被吃掉!
如果java可以把桌面应用做的很好,相信不会有人去冒险用js!
--今天喝大了 成诗人了  不容易

#17


月影说得很好

#18


很明显是基于prototype的 继承
一样可以通过 call  apply 实现继承
师傅教的 
哈哈

#19


引用 9 楼 s_liangchao1s 的回复:
HTML code
引用月影的一段话:
说javascript是一种基于对象的语言,是一种正确而略显保守的判断,而说javascript不面向对象
,在我看来则是错误的认知。事实上有足够理由证明javascript是一种面向对象语言,只是与传统的
class-basedOO(基于类的面向对象)相比,javascript有它与众不同的地方,这种独特性我们称它为
prototype-basedOO(基于原型的面向对象)

支持!
顶!

#20


无所谓面向对象的不是基于对象的

#21


引用 2 楼 kingwolf_JavaScript 的回复:
这个无所谓是面向对象的语言还基于对象(Object-based)的编程语言. 
就看你怎么理解了.我认为JavaScript是基于对象(Object-based)的编程语言. 
因为在浏览器中有许多JavaScript可以直接操作的对象. 
但是JavaScript同样可以像其他面向对象的语言一样, 
创建属于自己的专有对象

#22


Fireworks的批处理命令就是JavaScript的,所以JavaScript不仅仅是只能应用在Web领域,只要为你的应用程序加入JavaScript解析引擎,就可以让你的应用程序也支持JavaScript,微软msdn好像有这个说明文档。

#23


js不是面向对象的语言,只不过现在对其进行了扩展,使它具有了面向对象的性质罢了!

#24


  JavaScript语言是基于对象的(Object-Based),而不是面向对象的(object-oriented)。之所以说它是一门基于对象的语言,主要是因为它没有提供象抽象、继承、重载等有关面向对象语言的许多功能。而是把其它语言所创建的复杂对象统一起来,从而形成一个非常强大的对象系统。     虽然JavaScript语言是一门基于对象的,但它还是具有一些面向对象的基本特征。它可以根据需要创建自己的对象,从而进一步扩大JavaScript的应用范围,增强编写功能强大的Web文档。

#25


引用 14 楼 neo_yoho 的回复:
引用 9 楼 s_liangchao1s 的回复:
HTML code 
引用月影的一段话: 
说javascript是一种基于对象的语言,是一种正确而略显保守的判断,而说javascript不面向对象 
,在我看来则是错误的认知。事实上有足够理由证明javascript是一种面向对象语言,只是与传统的 
class-basedOO(基于类的面向对象)相比,javascript有它与众不同的地方,这种独特性我们称它为 
prototype-basedOO(基于原型的面向对象) 
 
引用 12 楼 s_liangch…

#26


再问个javascript和AJAX的区别
AJAX没学过,是不是AJAX要比javascript更先进?

#27


24小时后结贴,有回帖延迟2小时~~  谢谢大家的答复,都说的很明白~

#28


javascript是基于对象的,JAVA是面向对象的,基于对象和面向对象的区别在于基于对象是指内部已经定义了对象,你只要直接使用,不需要new的,比如js里面的object,window,document,等等都是写好,可以直接使用的,但是java中正常情况下你就必须先new 一个类,然后才能使用。相信已经够清楚了吧

#29


相信你看错题目了阿。。。 我没说JAVA... 是AJAX  小兄弟~~

#30


ajax包含于javascript,所用的技术完全是从javascript衍生出来的,并没有新的东西。可以说,ajax只是javascript的一个子类。