JavaScript将成为浏览器战争的主战场
据国际媒体报道,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将成为浏览器战争的主战场相关推荐
- JavaScript DOM编程艺术学习心得系列 ——(二)DOM与浏览器战争
DOM与浏览器战争 继上一篇介绍过JavaScript 之后,我门要来看一看 DOM 和浏览器战争这块的事情了.这一部分完结之后,总结系列将要开始介绍复习一下 JavaScript 语法的部分了. 1 ...
- js php 正则差别,JavaScript正则表达式的浏览器的差异
JavaScript中的正则表达式在不同的浏览器中得到的结果可能会有差异,下面把正则表达式在五大主流浏览器(IE.Firefox.Chrome.Safari.Opera,以当前版本为准)之间的差异整理 ...
- 使用基于 WebRTC 的 JavaScript API 在浏览器环境里调用本机摄像头
HTML5,JavaScript 和现代浏览器这套三驾马车的组合,使得传统的 Web 应用较之过去能实现更多更丰富的同用户交互的功能.摄像头如今已成为智能手机的标配,前端 Web 应用也出现了越来越多 ...
- 用Javascript代码实现浏览器菜单命令(以下代码在 Windows XP下的浏览器中调试通过
每当我们看到别人网页上的打开.打印.前进.另存为.后退.关闭本窗口.禁用右键等实现浏览器命令的链接,而自己苦于不能实现时,是不是感到很遗憾?是不是也想实现?如果能在网页上能实现浏览器的命令,将是多么有 ...
- python代替javascript_Pyjamas - 用python代替javascript编写基于浏览器的应用
如果能用python代替Javascript编写基于浏览器的应用,该有多好啊.但是,Javascript是唯一一种能在浏览器里执行的语言(Flash或Silverlight除外).换个思路,先用Pyt ...
- JavaScript单线程和浏览器事件循环简述
JavaScript单线程 在上篇博客<Promise的前世今生和妙用技巧>的开篇中,我们曾简述了JavaScript的单线程机制和浏览器的事件模型.应很多网友的回复,在这篇文章中将继续展 ...
- html 禁止页面回弹,JavaScript禁止微信浏览器下拉回弹效果
本文实例为大家分享了JavaScript禁止微信浏览器下拉回弹的效果,供大家参考,具体内容如下 方法1: var overscroll = function(el){ el.addEventListe ...
- JavaScript在chrome浏览器获取屏幕
JavaScript在chrome浏览器获取屏幕 实例demo 实例demo navigator.mediaDevices.getDisplayMedia需要在"https:"下才 ...
- javascript如何判断浏览器是否安装某插件
javascript如何判断浏览器是否安装某插件 如需转载请标明出处:http://blog.csdn.net/itas109 QQ技术交流群:129518033 文章目录 javascript如何判 ...
最新文章
- 程序员微信头像_这才是程序员的内心独白
- 转【查看oracle数据库的连接数以及用户 】
- 从酷睿双核到Tiger Lake-H,英特尔如何帮游戏笔记本完成蜕变
- 高性能WEB开发(11) - flush让页面分块,逐步呈现
- Windows系统下查看某一进程下所有线程的dos命令
- 【剑指 offer】(十九)—— 二叉树镜像
- mysql analyze_技术分享 | MySQL EXPLAIN ANALYZE
- location.href和open的几种用法和区别
- 【前端技术】一篇文章搞掂:uni-app
- 【Unity 知识点】Unity 如何查找被隐藏的游戏对象
- 地球系统模式(CESM)实践技术应用
- Linux安装jdk
- php zend optimizer 解密,PHP反编译工具(Mr.DeZend GUI)下载 v1.0
- java sql报错不能catch_java异常(转) - osc_ioa3fr1w的个人空间 - OSCHINA - 中文开源技术交流社区...
- 吉利德出手210亿美元押注癌症ADC疗法,靶向化疗时代到来?-1
- vsftp实用教程(四种配置需求)
- EngineerCMS在linux下部署,并采用docker、onlyoffice实现文档协作
- NVIDIA TX2--5--NVIDIA Jetson TX2 挂载128G 的SD卡
- windows版本10.0.17134,安装最新补丁后无法远程windows server 2008、2013、2016服务器
- 7-2 计算职工工资 (20 分)
热门文章
- WebGIS概述:WebGIS基础(1)
- vue 发送ajax请求
- Codepen 每日精选(2018-4-22)
- PHP开发中csrf攻击的简单演示和防范
- Java程序员应知道的十条Java优化策略,让你的系统健步如飞
- 介绍一个开源的SIP(VOIP)协议库PJSIP
- Elasticsearch2.x Breaking changes
- CentOS 7 源码编译MariaDB 5.5.46
- C/C++头文件大全
- Pytorch基础训练库Pytorch-Base-Trainer(支持模型剪枝 分布式训练)