明年就要毕业了,最近参加校招,找工作的过程确实纠结,有时间要好好总结下。本来一直在投后台开发的职位,结果拿了个web前端的职位。感觉web前端也是蛮有前途的,就接受了。以前基本上没接触过这方面的知识,因此打算在入职以前看看基础知识。最近在看javascript,感觉它和以前接触到传统语言有很多的不同之处。总结一下它和以前接触过的语言的区别,加深下对javascript的总体理解。
1.java和C++是面向对象的语言,提供抽象、继承、重载等有关面向对象的功能,但是javascript却是基于对象事件驱动编程语言,所谓基于对象就是javascript把其他语言创建的对象统一起来,形成一个对象系统,以供自己使用。javascript的封装和继承都是通过函数来进行模拟。感觉javascript的事件驱动模型和MFC等客户端编程语言有很大的相似之处。
2.javascript是一种脚本语言,其源代码不需要编译就可以文本格式的字符代码发给客户端,有浏览器解释执行。而C,C++和java等语言必须经过编译才可以执行。
3.javascript是一种弱类型的语言,即变量在使用前不需要声明,而是解释器在运行时检查其数据类型。C,C++和java等语言是强类型的语言,即所有变量在编译之前必须做声明。
4.javascript采用动态联编,即javascript的对象引用在运行时进行检查。而C,C++和java等语言采用静态联编,即对象引用必须在编译是进行。在面向对象的多态性实现上会采用动态联编(当然C++中还有静多态的即通过模板来静态联编实现多态),然而javascript就是采用动态联编的,因此讨论javascript的多态性就没有甚么必要了。
我感觉javascript和其他这些语言还是很大不同的,确实也是一门很强大的语言。我认为要学好一门知识,首先应该对它有个整体的把握,这样才不会只学到一些皮毛,才可以更深入的去理解它。因此我写这篇小文章来总结这几天看javascript和理解吧,明白了它和以前接触的语言的异同点和用途才会更好的掌握吧。希望自己可以学好这门语言,毕竟以后工作中要经常用到的。