静态型语言和动态类型语言

最近在接触TypeScript,研究和平常JavaScript的使用区别;前者声明变量的时候就要定义相应的类型,后者的变量可以根据环境来改变它的类型;这个就设计到强弱类型语言的区别了; 动态类型语言  静态类型语言就算它的类型可以根据环境而进行转换的,也就是说检查是在运行时才做的,如:  var a = 1  console.log(a+'1') // '11'  console.log(a-'1') // 0在进行 a+'1'运算的时候,a先会把自身转化为字符串然后再更'1'进行拼接;运算a - '1' 的时候'1'会转化成1然后进行减法运算;动态类型在解释语言中极为普遍,如 JavaScript、Perl、Python、Ruby 等等。静态类型语言静态类型语言的话刚好和动态类型相反,静态类型语言类型检查是在运行前的编译阶段确定的。除非强制装换的话,类型时不能变更的。C/C++、C#、Java都是静态类型语言的典型代表。

本文章由javascript技术分享原创和收集

发表评论 (审核通过后显示评论):