这个题目可以让我们进行充分的思考,通过
弱类型语言这几个字,我们可以进行如下拓展:静态语言:我们把在使用之前就需要确认其变量数据类型的称为静态语言。动态语言:我们把在运行过程中需要检查数据类型的语言称为动态语言。
通常把偷偷进行类型转换的操作成为隐式类型转换:
支持因此类型转换的语言称为弱类型语言,不支持隐式类型转换的语言称为强类型语言。编译型语言:通常都会对源代码进行编译,生成可以执行的二进制代码,执行的是编译后的结果。(C语言,C++、Object-C、swift)解释型语言:通常不用对源代码进行编译,一般是通过解释器载入脚本后运行。由于每个语句都是执行的时候才进行解释翻译,这样解释性语言每次执行就要翻译一次,效率相对要低。(Javascript、Python、Erlang、PHP、Perl、Ruby)由此我们知道,JS属于弱类型、动态、解释型语言。
拓展
弱(强)类型语言、静(动)态语言、编译(解释)型语言概念总览
支持因此类型转换的语言称为弱类型语言,不支持隐式类型转换的语言称为强类型语言。
我觉得这句话有问题,c++中也有隐式类型转换。但是c++不是弱类型语言。



