虽然有大量的编程语言,但浏览器解释的编程语言不多。<script>标记具有一个类型属性,可以设置为javascript或ecmascript。php可以嵌入到带有<php [code] ?>标记的html中。为什么没有类似的机制来嵌入python/haskell/c/等等?它们缺乏浏览器环境(例如javascript的“document”对象和php的超级全局),但是在这些语言中,类似的环境可以作为模块构建。许多编程语言都有cgi模块,因此这方面有先例。
发布于 2014-04-08 20:34:32
大多数浏览器解释一种编程语言: JavaScript。
Internet还支持(或支持) VBScript。有一个插件(或几年前)可以为IE添加对PerlScript的支持。
他们不支持更多,因为如果一个浏览器引入了支持,那么任何使用该语言编写代码的人都只能在一个浏览器上工作,而不能在JavaScript中做他们不能做的事情。十年前,这对微软来说并不是什么问题,因为他们在市场上占据了主导地位,而企业内部网(Intranet)就更是如此。今天,情况发生了变化。
PHP不被浏览器解释,在WWW的上下文中,它是在服务器上处理的。您可以在服务器上使用您喜欢的任何语言,包括Python、Haskell和C。最近我一直在使用Perl (通过Apache+FastCGI)和JavaScript (通过Node.js)。
很多语言都有允许将代码直接嵌入到HTML中的方法(例如Perl的梅森)。但是,通常倾向于使用模板DSL (例如Template-Toolkit、Smarty或工具栏)将显示逻辑与其他逻辑分离。
发布于 2014-04-08 20:34:39
浏览器通过使用插件来解释更多的语言。闪存和Java在脑海中浮现。PHP不是浏览器解释的,而是由服务器处理的,服务器向浏览器发送纯HTML。Javascript是一个例外,因为它在没有插件的情况下工作。
https://stackoverflow.com/questions/22947558
复制相似问题