JavaScript 是解释型的, 是直译式脚本语言. JavaScript 是不需要编译的, 浏览器直接解释源代码, 并执行在内存中创建变量等操作.
什么是编译型?
编译型语言是把源代码先编译为机器码(也就是所谓的可执行程序, 比如 Windows 系统的 exe 文件), 运行的时候电脑只需直接把机器码交给 CPU 执行即可. 编译型语言的特点是运行速度快, 效率高. 缺点是可移植性差.
什么是解析型?
解析型语言则是直接以源代码的形式出现, 运行的时候再实时解析为机器码并执行. 所有的脚本语言 (当然也包括 JavaScript) 都是解释型语言. 这类语言有个最大特点就是它们都不能独立存在, 必须寄生在其他程序 (比如浏览器) 内.
由于 JavaScript 属于解释型语言, 这就表示每句代码只有在运行时, 系统才知道这句代码是否有错.
换句话说, 由于编译型语言在运行前进行了编译, 编译器对所有代码都进行了检查, 这样就不会产生一些低级错误, 例如使用了不存在的名字, 或者使用了错误的名字. 而 JavaScript 就可能会出现这些问题.
目前的大部分工具, 对 JavaScript 脚本语言的调试都支持得不是很好, 这主要是由语言性质决定的.
虽然在编写简单脚本的时候, 这并不是什么大问题, 但随着 web 应用不断变化的需求, 编写大量脚本是不可避免的, 这就需要开发者更细心, 更专心地对付这些脚本了.
来源: http://www.css88.com/qa/javascript/11392.html