自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

一個(gè)二進(jìn)制的Web新世界

開(kāi)發(fā) 前端
出于戰(zhàn)略性原因,IE始終對(duì) WebGL 有復(fù)雜的感 情。Apple,Google,Mozilla以及Opera都已經(jīng)成為了WebGL工作組的成員,僅剩微軟處境極為尷尬。支持WebGL意味著自己苦心 經(jīng)營(yíng)的DX被孤立在標(biāo)準(zhǔn)之外,不支持單獨(dú)自立門(mén)戶的話又是與標(biāo)準(zhǔn)為敵,更要被眾多開(kāi)發(fā)者唾棄,如今微軟日漸勢(shì)弱,對(duì)于是否在IE10上支持WebGL,對(duì)于微軟而言絕對(duì)將是一個(gè)“非常艱難的決定”。

出于戰(zhàn)略性原因,IE始終對(duì) WebGL 有復(fù)雜的感 情。Apple,Google,Mozilla以及Opera都已經(jīng)成為了WebGL工作組的成員,僅剩微軟處境極為尷尬。支持WebGL意味著自己苦心 經(jīng)營(yíng)的DX被孤立在標(biāo)準(zhǔn)之外,不支持單獨(dú)自立門(mén)戶的話又是與標(biāo)準(zhǔn)為敵,更要被眾多開(kāi)發(fā)者唾棄,如今微軟日漸勢(shì)弱,對(duì)于是否在IE10上支持WebGL,對(duì)于微軟而言絕對(duì)將是一個(gè)“非常艱難的決定”。

然而就在這一系列關(guān)系還沒(méi)理清之際,微軟IE博客在12月1日發(fā)布了一篇 Working with Binary Data using Typed Arrays,顯然IE10將確實(shí)地支持Type Arrays,加上之前已經(jīng)支持的Chrome12以及Firefox7,三巨頭無(wú)疑即將把整個(gè)Web推進(jìn)二進(jìn)制的新世界。(當(dāng)然,國(guó)內(nèi)自然是遙遙無(wú)期)

不過(guò)諷刺的是,Typed Arrays卻是由WebGL定義引入的,隨后被標(biāo)準(zhǔn)所采納,包括FileAPI、XHR,甚至是Web Sockets都在考慮是否擴(kuò)展以支持二進(jìn)制數(shù)據(jù)的控制??梢?jiàn)微軟的處境不僅僅是與一個(gè)WebGL這樣的眼中釘為敵,更重要的是,不管愿意不愿意,它都可 能必須對(duì)標(biāo)準(zhǔn)所采納的競(jìng)爭(zhēng)對(duì)手的游戲規(guī)則低頭。

那么什么是Typed Arrays?完整的定義可以在WebGL里找到,同名文檔見(jiàn) Typed Array Specification,而微軟指向的文章是ECMAScript.org Wiki上的同名詞條 Typed Arrays,我想應(yīng)該不是每個(gè)人都有興趣去瀏覽文檔,所以我就翻譯一部分概述內(nèi)容:

◆ 一種顯式的緩沖區(qū)類(lèi)型 ArrayBuffer 被引入。其以明確的長(zhǎng)度創(chuàng)建,并且在其生命周期內(nèi)都是固定長(zhǎng)度。ArrayBuffer 中的內(nèi)容不能被直接訪問(wèn)。

◆ 同時(shí)引入一系列的類(lèi)型用以描述如何解析 ArrayBuffer 中的字節(jié)。比如,Int32Array 將 ArrayBuffer(或其分區(qū)段) 中的字節(jié)看作 32位帶符號(hào)整數(shù)解析。(譯注:即以32bit signed integers作視圖)

◆ 同一個(gè)ArrayBuffer可以有多個(gè)不同的視圖,以支持構(gòu)建復(fù)雜的數(shù)據(jù)結(jié)構(gòu),盡管有一定的難度。

◆ 引入 DataView 類(lèi)型,用以對(duì)來(lái)自底層 ArrayBuffer的字節(jié)的基礎(chǔ)數(shù)據(jù)類(lèi)型的任意的索引讀寫(xiě)。

◆ 其目的是,在較小性能損失下,盡可能地做到原生字節(jié)的訪問(wèn),并同時(shí)保證安全。

說(shuō)了這么多,不如直接看微軟給出的DEMO:Binary File Inspector,怎么說(shuō)呢,看起來(lái)像UltraEdit的二進(jìn)制視圖。終于,JS可以讀取二進(jìn)制了!當(dāng)然僅限于瀏覽器支持的文件,不過(guò)當(dāng)前,這已經(jīng)足夠了。

相關(guān)的示例代碼上面的鏈接里都有,我就不在冗述。有一點(diǎn)我想提一下,就是“在眾多討伐聲中貌似已入暮年”的flash。

以前有人問(wèn)我AS和JS主要能力上的區(qū)別的時(shí)候,我總是會(huì)把二進(jìn)制讀寫(xiě)放在很前面講,并非因?yàn)樽x寫(xiě)二進(jìn)制就似乎無(wú)所不能,而是因?yàn)檫@確實(shí)是它們間的 主要區(qū)別之一。flash.utils 包里的 ByteArray 與今天提到的 命題何其相似,甚至在讀寫(xiě)二進(jìn)制控制方面AS仍然略強(qiáng)于JS,然放眼現(xiàn)在的flash移動(dòng)版失利的形勢(shì),各個(gè)方面flash都在被HTML5追趕。 flash雖然強(qiáng)雖然領(lǐng)先,但在標(biāo)準(zhǔn)之勢(shì)下,也難擋眾多蓄意或非蓄意的圍攻。這樣的情況也確確實(shí)實(shí)的發(fā)生在微軟身上:

今天,微軟你實(shí)現(xiàn)了源自WebGL而后標(biāo)準(zhǔn)化的 Typed Arrays。

明天,WebGL,微軟你能說(shuō)不么?

原文:http://www.swordair.com/blog/2011/12/742

【編輯推薦】

  1. Web App和Native App之爭(zhēng)純屬扯淡
  2. Web開(kāi)發(fā)面臨的挑戰(zhàn)主要有哪些?
  3. Mozilla技術(shù)布道者給Web開(kāi)發(fā)者推薦Firefox插件列表
  4. Web設(shè)計(jì)VS App設(shè)計(jì):互相學(xué)習(xí)到了什么
  5. Web前端開(kāi)發(fā)有“前”沒(méi)錢(qián)?
責(zé)任編輯:陳貽新 來(lái)源: 葵中劍的博客
相關(guān)推薦

2011-12-31 11:22:50

Web新世界

2009-02-27 09:37:33

Google二進(jìn)制代碼

2017-04-11 10:48:53

JS二進(jìn)制

2010-10-13 15:45:23

MySQL二進(jìn)制日志

2018-10-22 14:37:16

二進(jìn)制數(shù)據(jù)存儲(chǔ)

2022-10-31 08:02:42

二進(jìn)制計(jì)算乘法

2011-05-25 14:10:38

浮點(diǎn)數(shù)

2021-11-10 09:15:00

CPU01 二進(jìn)制Linux

2022-07-18 09:01:15

SwiftApple二進(jìn)制目標(biāo)

2021-01-14 09:40:54

漏洞macOS屬性表文件

2009-12-16 10:49:42

Ruby操作二進(jìn)制文件

2022-07-26 13:00:01

安全符號(hào)源代碼

2009-08-12 18:06:53

C#讀取二進(jìn)制文件

2010-06-09 13:02:29

MySQL啟用二進(jìn)制日

2015-03-27 15:47:15

IBM沃森認(rèn)知計(jì)算

2024-06-12 09:19:23

PHP開(kāi)發(fā)者模式

2020-10-10 14:27:01

kubernetes 二進(jìn)制部署

2010-04-16 09:42:25

Fedora 13Nvidia二進(jìn)制驅(qū)動(dòng)

2022-09-05 08:12:28

Google二進(jìn)制Protobuf

2013-04-28 15:37:35

JBoss
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)