写点什么

Internet Explorer 9 预览:新特性与分析

  • 2010-04-27
  • 本文字数:4459 字

    阅读完需:约 15 分钟

近日,微软发布了 Internet Explorer 9 的一个预览版,值得关注的是该预览版的性能得到了改进,同时还采取了一些标准,如 SVG、CSS 以及 HTML 5 等等。

性能

性能比较结果表明 IE9 预览版的 JavaScript 引擎要快于Firefox 和IE8,但仍落后于Safari 和Chrome

IE8 3825.53
Opera 10.10 2491.93
IE9 PDC 2009 Demo 834.00
Firefox 3.6 699.80
Firefox 3.7 Alpha2 Pre-Release 610.20
IE9 Mix 2010 Platform Preview 1.9.7745.6019 598.80
Safari 4.0.5 (531.22.7) 407.93
Chrome 4.0.249.89 373.87
Chrome 5.0.342.2 (dev) 293.47
Opera 10.5 285.20

全新的 JavaScript 引擎

当下的人们期望 JavaScript 引擎能越来越快,为了满足这种日益增长的需求,IE团队开发了一个全新的JavaScript 引擎,代号为Chakra

IE9 平台预览版包含了我们所开发的全新 JavaScript 引擎(代号为 Chakra)的首个版本,它从根本上改变了 Internet Explorer 9 中的 JavaScript 性能。Chakra 包含了一个全新的 JavaScript 编译器,可以将 JavaScript 源代码编译成高质量的本地机器码;还有一个全新的解释器,能够在传统的网页上执行脚本;此外还对 JavaScript 运行时和程序库进行了改进。

IE9 中的 Chakra 还具有很多极具价值的特性,如:

  • 后台编译
  • 类型优化
  • 快速的解释器
  • 优化的程序库

硬件加速

借助于 Internet Explorer 平台预览版,Web 开发者可以充分利用硬件来渲染图形与文本

Internet Explorer 平台预览版使用到了 Windows 应用编程接口(API)中的 DirectX,这使得 Web 开发者如虎添翼。首先通过 Direct2D 和 DirectWrite 将所有的图形和文本渲染从 CPU 迁移到了显卡中。借助于图形硬件加速,那些需要绘制大量图形的站点不但可以降低 CPU 的占用率,还能加快图形的渲染速度。此外,你可以继续按照既有的方式设计站点,同时自动享受到这些变化所带来的好处。

AMD 曾公开“称赞”微软在 IE9 中充分利用硬件的做法,这会给 AMD 带来如下实惠:

  • 微软使用 Direct2D 和 DirectWrite 取代了 GDI 来增强 MSHTML 渲染层。Direct2D 可以实现 GPU 加速的 2D 图形与文本渲染,还支持子像素(sub-pixel,屏幕上的像素是由几种色彩构成的,通常是红、绿、蓝,也就是所谓的三原色。有时,一些显示器具有三种以上的色彩,比如红、绿、蓝、黄或是红、绿、蓝、白等。这些像素组件通常叫做子像素,但由于光学的模糊效果以及人眼神经的空间融合,最终看到的只是一种颜色——译者注)定位。此外还使用 GPU 进行图形的缩放(位图对应为纹理),这非常适合于图片的缩放和移动。这种 GPU 支持可以提升页面的可读性、更精准地定位文本与图片、改进平滑滚动和缩放。
  • 与旧版的 Internet Explorer 相比,JavaScript 性能得到了显著的提升;与其他浏览器相比,即便没有超过他们也有得一拼。过去,IE 中的 JavaScript 是解释执行的,并不会编译为本地的处理器指令。现在的 JavaScript 引擎包含了一个 JIT 编译器,它会发出 x86 指令并在运行前编译代码,这极大地提升了性能。JIT 编译器会根据处理器生成指令并充分利用所处的平台。
  • IE9 比其前辈更兼容于标准,新增了对 HTML5 元素的支持,如 <video> 和 <canvas>,此外还支持 CSS3 和 SVG。可以借助于 Direct2D 在 GPU 上加速 <canvas> 元素,<canvas> 元素可以通过硬件加速渲染环境进行应用开发、改进视觉显示效果、降低 CPU 使用率以及提高电源使用率。

NVIDIA 对此的反应与 AMD 如出一辙:

今天,伴随着Internet Explorer 9 的横空出世,微软开启了可视化计算的新时代。Internet Explorer 9 包含了一个全新的JavaScript 引擎,支持HTML5 和硬件加速的图形与文本。Internet Explorer 9 是首个利用了现代硬件的浏览器,这极大地提升了整个浏览器的图形渲染速度与性能,它具有如下几个之最:首次提供了硬件加速的可缩放矢量图形(SVG);首度借助于从CPU 向GPU 迁移所带来的好处来增强JavaScript 引擎的性能;首度通过GPU 来增强HTML5。

值得注意的是,早在此之前就已经有Beta/ 非官方版本的浏览器曾支持过GPU 加速

SVG 支持

可缩放矢量图形(SVG)格式正成为 IE9 上的一等公民。 SVG 将成为微软新的战略选择,微软也将通过其支持下一代 Web 应用中的矢量图形:

我们期望有众多用户和开发者支持的 SVG 能成为 Web 不可或缺的一部分。相对于光栅图片来说,SVG 具有很多优势。借助于硬件加速图形,我们完全可以迈进交互式、图形驱动的 Web 世界了。

就不同厂商实现之间的互操作性这个问题,微软表示将与 SVG 工作组协作以保证其实现能与其他厂商的实现互操作

虽然 SVG 规范的首个版本早在几年前就已经处在“推荐”状态,但规范本身依然存在一些未解决的问题。这导致目前各大主流浏览器中的 SVG 实现在范围和行为上差异较大。我们的目标定位在互操作性上,借此简化开发者的工作。对于我们所实现的那部分规范来说,我们会严格遵守规范的要求。有时,我们的决定会受到其他浏览器的行为和 SVG 的未来发展方向所影响。

借助于现在发布的预览版,开发者可以将 SVG 插入到 HTML 中并创建可缩放的图形:

<!DOCTYPE html>
<p style="font-family:Georgia;font-size:9pt;">You can insert vector images using inline HTML...
<BR>
<svg width="200" height="100">

    <circle cx="50" cy="50" r="45" fill-opacity=".5" fill="red"/>

    <circle cx="100" cy="50" r="45" fill-opacity=".5" fill="yellow"/>

    <circle cx="75" cy="100" r="45" fill-opacity=".5" fill="blue"/>

    <text x="40" y="70" fill="white">Colors!!</text>
</svg>
</p>

目前 IE9支持如下SVG 特性

  • 基本形状:矩形、圆、椭圆、直线、折线以及多边形
  • 坐标系统、变换以及单元
  • 文档结构、元数据以及可扩展功能
  • 路径,包括path元素的所有功能和d属性

HTML5

IE9 实现了 HTML 5 规范的部分特性,微软表示随着规范的日趋完善,实现的特性也会越来越多:

微软早在 Internet Explorer 8 中就已经开始支持 HTML5 规范草案的部分特性了。这包括 DOM 存储跨文档消息 Ajax 导航(借助于 window . location . hash 值)以及在线离线的事件处理器。Internet Explorer 平台预览版通过支持HTML5 的一些API 以及修改了解析HTML 的方式来强化这一点。

CSS

相较于兼容 CSS2.1 规范的 IE8 来说,IE9 预览版改进了对 CSS 的支持,它增加了对 CSS3 中众多组件的支持,其余组件仍在计划当中。

目前,IE9 所支持的 CSS3 新特性有:

  • 借助于border-radius属性实现的圆角矩形
  • RGBA 色彩模型
  • opacity属性
  • CSS3 选择器

遗失的重要特性

值得注意的是,IE9 尚未实现 HTML5 中的部分特性,而 Firefox 和 Chrome 已实现的某些特性也不在 IE9 中,比如说:

  • Canvas 元素
  • Web Workers
  • Open web font 支持
  • Ogg Theora for video(目前只支持 H.264 video codec)

发布声明明确表示 IE9 不支持 Windows XP,用户需要安装 Windows Vista 或 Windows 7。

查看英文原文: Internet Explorer 9 Preview: New Features and Analysis

2010-04-27 00:123058
用户头像

发布了 88 篇内容, 共 264.8 次阅读, 收获喜欢 8 次。

关注

评论

发布
暂无评论
发现更多内容

让 Serverless 更普惠,阿里云函数计算 FC 宣布全面降价,最大幅度达 37.5%

阿里巴巴云原生

阿里云 Serverless 云原生 函数计算

适合小白Web前端入门JS基础知识梳理汇总

千锋IT教育

开源共建 | Dinky 扩展批流统一数据集成框架 ChunJun 的实践分享

袋鼠云数栈

Baklib知识分享 | 搭建企业在线帮助中心的最佳攻略

Baklib

如何做好成熟完整的企业团队知识管理?

Baklib

团队管理 知识管理

银行APP用户体验外滩峰会圆满落幕!易观分析赋能用户体验体系,助力体验提升

易观分析

App 银行 易观

如何通过Java代码给Word文档添加水印?

在下毛毛雨

Java word 水印

3.1版本【HarmonyOS 第一课】正式上线!参与学习赢官方好礼>>

HarmonyOS开发者

HarmonyOS

《大厂面试》之JVM篇21问与答

钟奕礼

Java java程序员 java面试 java编程

Linux之用户管理、权限管理、程序安装卸载

C++后台开发

Linux 后端开发 linux开发 Linux服务器开发 C++开发

Apisix网关快速入门实践

IT巅峰技术

国标解读|从关键信息基础设施安全国标看软件供应链安全

墨菲安全

SBOM 软件供应链安全

【计算讲谈社】第十二讲|数据中心那些事儿

大咖说

数据中心 碳中和

Wallys/DR7915/MT7915/MT7975/industrial mini pcie card 2T2R

Cindy-wallys

MT7915 MT7975 / 2.4G&5G

让 Serverless 更普惠,阿里云函数计算 FC 宣布全面降价,最大幅度达 37.5%

Serverless Devs

阿里云 Serverless

PHP反序列化漏洞解析

网络安全学海

网络安全 安全 信息安全 渗透测试 漏洞挖掘

信息论与编码:信道编码的基本概念

timerring

11月月更 信息论

【案例】数字化浪潮中,云科通明湖如何助力能源行业弯道超车?

通明湖

负载均衡

深度解读|NebulaGraph x 阿里云计算巢,云上构建超大规模图数据库

阿里云弹性计算

图数据库 计算巢

调用链路上千条,如何观测 Nacos 的运行状态

阿里巴巴云原生

阿里云 微服务 云原生 naocs

MyBatis 延迟加载代码详解

千锋IT教育

为什么你的敏捷总是不成功?

敏捷开发

Wallys/ industrial mini pcie card/2x 2 5G /High power Radio card

Cindy-wallys

QCA9882 2x 2 5G high power

5分钟实现「视频检索」:基于内容理解,无需任何标签

Zilliz

人工智能 Towhee 视频检索

谁能破解客户数字化困局?

ToB行业头条

阿里P8整理的新版手抄本,所有Java知识操作

钟奕礼

Java java程序员 java面试 java编程

mysql经典面试题

@下一站

MySQL 编程 dba 11月月更

FAQ是什么?该如何编辑FAQ?

Baklib

前端leetcde算法面试套路之回溯

js2030code

JavaScript LeetCode

Spring Bean的生命周期(详细解读)

千锋IT教育

日志异常检测准确率低?一文掌握日志指标序列分类

云智慧AIOps社区

深度学习 日志分析 时间序列 指标预测 日志异常

Internet Explorer 9预览:新特性与分析_微软_Dio Synodinos_InfoQ精选文章