C++和JavaScript的对比

  1. C++是编译型语言,JavaScript是解释型语言:

    C++的编译过程:预处理->编译->汇编->链接
    JavaScript编译过程:预处理->解释执行

  2. C++是静态语言(强类型语言),JavaScript是动态语言(弱类型语言):

    静态语言在编译时确定变量的数据类型,因此在变量使用前必须声明变量类型。并且编译时会进行类型匹配检查,因此不给变量的赋不同类型的值。
    动态语言在运行时确定变量的数据类型,在使用前无需声明变量类型。并且在运行过程中可以给变量赋不同类型的值。
    静态语言IDE开发过程中会对类型严格限制,开发过程中便可减少一些错误,适合逻辑业务复杂、大型的、生命周期长的系统。但是灵活性相对较差。
    动态语言比较灵活,代码更加简洁,可以让开发者将更多精力放在逻辑思考上。运行速度相对慢一些,开发过程中难以检测错误。

  3. JavaScript是函数式编程语言,C++不是:

    JavaScript中函数当做对象来使用,可以将函数作为另一个函数的输入输出。
    C++需通过函数指针实现高阶函数。

  4. C++有指针,JavaScript无指针:

    在C++中的赋值,所有的基本类型都是直接复制,而自定义类型因为有指针的存在,可以自己选择进行深复制(复制)还是浅复制(引用)。
    而在Javascript中,所有的基本类型赋值都是复制,而所有的其他类型赋值都是引用。

  5. JavaScript有闭包,C++没有

猜你喜欢

转载自www.cnblogs.com/zhoulixiangblog/p/12304682.html
今日推荐