据国际媒体报道,JavaScript悄悄运行于网站内部10几年后,已经成为第二轮浏览器战争的一个主战场。

JavaScript诞生于1990年代中期,程序员用它可以做很多事情,从基本的网站菜单到网络表格程序。

当时,微软IE浏览器正在挑战网景的Navigator。IE赢得了那场战争,不过,IE现在面临Moazilla的Firefox,Google的Chrome,苹果的Safari以及Opera浏览器的挑战。

所有IE挑战者们都在鼓吹其Javascript的性能,他们甚至为其浏览器中的Javascript引擎专门进行了命名:Chome叫V8,Firefox叫TraceMonkey,Opera的Futhark以及即将发布的Carakan,Safari刚刚才推出的Nitro。

尽管在JavaScript上落后于对手,微软却真正关注浏览器的整体性能,尤其是JavaScript的性能,不过,当微软最新的IE8浏览器出来时,我们发现,微软内部在JavaScript上存在巨大的观点分歧。

IE总经理Dean Hachamovitch说:“我们将让JavaScript引擎变得更快,不过现在还不清楚有多少人欢迎这种性能,JavaScript是决定页面渲染速度的一种因素。只是一种因素,不是灵丹妙药。”

Hachamovitch认为,由于JavaScript很容易测量,因此,它的性能已经成为浏览器性能的代名词。微软公布的页面载入测试中,IE8性能超越了Firefox 3.0.5和Chrome 1.0。

无独有偶,IE8出来前一天,Google开始宣传自己浏览器的性能,Google发布Chrome Experiments网站来展示其高性能Javascript给浏览器所带来的好处。

浏览vs运行程序

上述公司的区别在于:微软关注今日的网络,其它对手重视未来的网络。

互联网已经由一种静态网络变成了包含各种应用程序的页面。换句话说,浏览器现在必须既处理数据,又载入页面。微软是浏览器市场的主导者,其份额为67%,挑战者们正在将目光对准他们认为的未来主流。

Mozilla的Firefox主管Mike Beltzner说:“我们将JavaScript的速度变得越快,网络将会变得越有趣,越具有交互性。”

Google也认同这种观点,Chrome工程师Darin Fisher说:“由于Javascript的限制,许多Web程序员感到沮丧,他们没法实现自己的想法。这不是唯一的瓶颈,但Google还是认为,目前提高浏览器性能的最大机会还是在于提升Javascript的性能。”

让JavaScript变得更快,Google有直接的利益。Google是云计算的最大拥护者。

不过,Google Docs,Google Calendar和Gmail这些并不是仅有的云计算产品。Yahoo,Facebook等许多网站都在广泛使用JavaScript,微软自己也在开发网络版的Office。

对于Web程序来说,只强调Javascript有些简单化。Web程序还可以从新的Web标准技术中获益,比如HTML5,CSS3等。不过,Javascript提供了一种程序语言将所有这些Web元素融入网站,而不仅是显示一些东西。

一场竞赛

JavaScript竞争不仅过去存在,它已经逐渐在一些网络程序编程中流行开来。比如雅虎Mail,人们可以点击邮件,将其拖动到文件夹中。这种高端的Javascript技术叫做Ajax。

Beltzner说:“几年前,人们开始接受以JavaScript为中心的新的开发模式,程序员们希望让浏览器处理更多的东西。”

2008年,Javascript引擎逐渐成为浏览器领域的竞争焦点。6月,Webkit发布了SquirrelFish引擎,然后SquirrelFish Extreme也出现。Firefox8月发布了TraceMonkey,Google9月随Chrome发布了V8,Opera今年2月发布了Carakan,本月,苹果在Safari 4 beta中发布了Nitro引擎。

Beltzner说:“我认为,是WebKit 真正引发了这种竞争。”

微软有自己的考虑。IE高级主管Amy Barzdukas说:“我们肯定关注其它浏览器,不过,浏览器制造商们不仅应该关心尖端技术,而且还应该关心浏览器的用户。”

JavaScript vs Flash和Silverlight

对于Web程序开发,微软有自己的回答,这就是Silverlight软件,它的主要针对目标是Adobe的Flash。Silverlight使用的是微软C#,Flash使用的是ActionScript程序语言。

程序员Doob说:“Chrome中的JavaScript几乎与Flash程序相当。不过,一般来说,JavaScript的速度只有Flash的3/4,这是JavaScript的一个缺点。”不过,他说,JavaScript开发工具还显得原始,另外,不同的浏览器,JavaScript版本也存在不同。

他说:“ActionScript的主要好处是,它在任何浏览器,任何版本的浏览器中的表现都是一样的,而JavaScript就不同了,它得看浏览器支持哪些功能。”

一般来说,随着程序技术的成熟,JavaScript将形成标准,不过现在,性能才是重点。

转载于:https://www.cnblogs.com/JoinZhang/archive/2010/08/21/1805322.html

JavaScript将成为浏览器战争的主战场相关推荐

  1. JavaScript DOM编程艺术学习心得系列 ——(二)DOM与浏览器战争

    DOM与浏览器战争 继上一篇介绍过JavaScript 之后,我门要来看一看 DOM 和浏览器战争这块的事情了.这一部分完结之后,总结系列将要开始介绍复习一下 JavaScript 语法的部分了. 1 ...

  2. js php 正则差别,JavaScript正则表达式的浏览器的差异

    JavaScript中的正则表达式在不同的浏览器中得到的结果可能会有差异,下面把正则表达式在五大主流浏览器(IE.Firefox.Chrome.Safari.Opera,以当前版本为准)之间的差异整理 ...

  3. 使用基于 WebRTC 的 JavaScript API 在浏览器环境里调用本机摄像头

    HTML5,JavaScript 和现代浏览器这套三驾马车的组合,使得传统的 Web 应用较之过去能实现更多更丰富的同用户交互的功能.摄像头如今已成为智能手机的标配,前端 Web 应用也出现了越来越多 ...

  4. 用Javascript代码实现浏览器菜单命令(以下代码在 Windows XP下的浏览器中调试通过

    每当我们看到别人网页上的打开.打印.前进.另存为.后退.关闭本窗口.禁用右键等实现浏览器命令的链接,而自己苦于不能实现时,是不是感到很遗憾?是不是也想实现?如果能在网页上能实现浏览器的命令,将是多么有 ...

  5. python代替javascript_Pyjamas - 用python代替javascript编写基于浏览器的应用

    如果能用python代替Javascript编写基于浏览器的应用,该有多好啊.但是,Javascript是唯一一种能在浏览器里执行的语言(Flash或Silverlight除外).换个思路,先用Pyt ...

  6. JavaScript单线程和浏览器事件循环简述

    JavaScript单线程 在上篇博客<Promise的前世今生和妙用技巧>的开篇中,我们曾简述了JavaScript的单线程机制和浏览器的事件模型.应很多网友的回复,在这篇文章中将继续展 ...

  7. html 禁止页面回弹,JavaScript禁止微信浏览器下拉回弹效果

    本文实例为大家分享了JavaScript禁止微信浏览器下拉回弹的效果,供大家参考,具体内容如下 方法1: var overscroll = function(el){ el.addEventListe ...

  8. JavaScript在chrome浏览器获取屏幕

    JavaScript在chrome浏览器获取屏幕 实例demo 实例demo navigator.mediaDevices.getDisplayMedia需要在"https:"下才 ...

  9. javascript如何判断浏览器是否安装某插件

    javascript如何判断浏览器是否安装某插件 如需转载请标明出处:http://blog.csdn.net/itas109 QQ技术交流群:129518033 文章目录 javascript如何判 ...

最新文章

  1. 程序员微信头像_这才是程序员的内心独白
  2. 转【查看oracle数据库的连接数以及用户 】
  3. 从酷睿双核到Tiger Lake-H,英特尔如何帮游戏笔记本完成蜕变
  4. 高性能WEB开发(11) - flush让页面分块,逐步呈现
  5. Windows系统下查看某一进程下所有线程的dos命令
  6. 【剑指 offer】(十九)—— 二叉树镜像
  7. mysql analyze_技术分享 | MySQL EXPLAIN ANALYZE
  8. location.href和open的几种用法和区别
  9. 【前端技术】一篇文章搞掂:uni-app
  10. 【Unity 知识点】Unity 如何查找被隐藏的游戏对象
  11. 地球系统模式(CESM)实践技术应用
  12. Linux安装jdk
  13. php zend optimizer 解密,PHP反编译工具(Mr.DeZend GUI)下载 v1.0
  14. java sql报错不能catch_java异常(转) - osc_ioa3fr1w的个人空间 - OSCHINA - 中文开源技术交流社区...
  15. 吉利德出手210亿美元押注癌症ADC疗法,靶向化疗时代到来?-1
  16. vsftp实用教程(四种配置需求)
  17. EngineerCMS在linux下部署,并采用docker、onlyoffice实现文档协作
  18. NVIDIA TX2--5--NVIDIA Jetson TX2 挂载128G 的SD卡
  19. windows版本10.0.17134,安装最新补丁后无法远程windows server 2008、2013、2016服务器
  20. 7-2 计算职工工资 (20 分)

热门文章

  1. WebGIS概述:WebGIS基础(1)
  2. vue 发送ajax请求
  3. Codepen 每日精选(2018-4-22)
  4. PHP开发中csrf攻击的简单演示和防范
  5. Java程序员应知道的十条Java优化策略,让你的系统健步如飞
  6. 介绍一个开源的SIP(VOIP)协议库PJSIP
  7. Elasticsearch2.x Breaking changes
  8. CentOS 7 源码编译MariaDB 5.5.46
  9. C/C++头文件大全
  10. Pytorch基础训练库Pytorch-Base-Trainer(支持模型剪枝 分布式训练)