下列关于 JavaScript 的说法中正确的是()
A
所有变量在使用之前必须做声明
B
JavaScript是面向对象的程序设计语言
C
JavaScript是解释性语言
D
JavaScript前身是Oak语言
正确答案:C
选C。
解释性语言是相对于编译型语言存在的,源代码不是直接翻译成机器语言,而是先翻译成中间代码,再由解释器对中间代码进行解释运行。比如Python/JavaScript / Perl /Shell等都是解释型语言。 A如果是局部变量无需声明,也可以使用,如下所示。
所以A错误。
B面向对象语言提供了类、继承等成分,有识认性、多态性、类别性和继承性四个主要特点。而javascript没有这些,所以B错误。
D选项中JAVA的前身才是Oak,而不是JavaScript。所以D错误。
A、是错误的,JS的语法要求不是很严格,而且是弱类型的语言(声明变量没有具体类型),而且用之前不声明也没关系。
B、不完全正确,所谓面向对象,一定要有“封装、继承、多态”3大特征,JS貌似支持的不是很好,只是基于面向对象而已啦
具体说面向对象的三大特征中:封装、继承、多态。JS少了多态。比如两个同名的函数,因为传入参数的类型不一样,就可以同时存在。而JS是不可以的,同名的函数只会使得后定义的覆盖掉先定义的。
C、是正确的,JS文件在完成之后,不会经过任何的编译。而是在运行时去解释执行。最好的例子就是,JS中一个函数有语法的错误,但是不会因为这个局部的错误而影响其他函数运行。
D、Java的前身是Oak语言,Java和Javascript不一样
编程思想
面向过程:凡事都要亲力亲为,每件事的具体过程都要知道,注重的是过程
面向对象:根据需求找对象,所有的事都用对象来做,注重的是结果
JS是一门什么样的语言?
js是一门解释性的语言
编译性语言
只须编译一次就可以把源代码编译成机器语言,后面的执行无须重新编译,直接使用之前的编译结果就可以;因此其执行的效率比较高;
解释性语言
程序在运行时才翻译成机器语言,每执行一次都要翻译一次;
js是一门脚本语言
js是一门弱类型语言,
强类型语言是一种强制类型定义的语言,即一旦某一个变量被定义类型,如果不经强制转换,那么它永远就死该数据类型。而弱类型语言是一种弱类型定义的语言,某一个 变量被定义类型,该变量可以根据环境变化自动进行转换,不需要经过现行强制转换。
强类型语言和弱类型原因其判断的根本是是否会隐形进行语言类型转变。
js是一门基于对象的语言
js不是面向对象的语言,但是可以模拟面向对象的思想
js是一门动态类型的语言:
动态类型语言:动态性语言是指在运行期间才去做数据类型检查的语言,也就是说动态类型语言编程时,永远不用给任何变量指定数据类型,该语言会在第一次赋值给变量时,在内部将数据类型记录下来。
静态类型语言:静态类型语言与动态类则刚好相反,它的数据类型在编译期间检查,
对于动态语言与静态语言的区分,其根本在于判断是在运行期间去做数据类型还是在编译期间检查。