Qui est le tueur JavaScript?

— , . . JavaScript , , , -, , .

, JavaScript , , . — , Java, Flash Silverlight. , , . HTML- - . JavaScript . — , , - . <video>, CSS- HTML- canvas. . , , HTML, .



, . , JavaScript -, , , , - , JavaScript. , , asm.js. ? — .

: ,


, JavaScript, - . , . ( ). , , . — , , , JavaScript. , JavaScript, .

, , , , . . , , . , , «» . , , . , ? , ? JavaScript- Angular, React Vue? , , «» ?

, , . , .


? Dart

— . — .

, JavaScript, , Babel, ( ) JS-, , . , , TypeScript ( JavaScript, , , , , null). TypeScript- JavaScript. JavaScript.

Asm.js:


asm.js. , 2013 Mozilla. . , asm.js, , . JavaScript.

asm.js , JavaScript. Asm.js- JS, . , asm.js, , . , asm.js , , . . Firefox 3D-, C++, , , JavaScript . asm.js , Emscripten.


, Unreal,

asm.js — , JavaScript. , asm.js, JavaScript-, , . () . JavaScript — , .

WebAssembly:


asm.js , - , , . . WebAssembly (WASM).

WebAssembly asm.js, - . — . WebAssembly-, asm.js, JavaScript. «» . , , . , . , WebAssembly-, . ( — , ), WebAssembly JavaScript. WebAssembly .


WebAssembly-

WASM-, , , , , C:

int factorial(int n) {
  if (n == 0)
    return 1;
  else
    return n * factorial(n-1);
}

WASM :

get_local 0
i64.eqz
if (result i64)
    i64.const 1
else
    get_local 0
    get_local 0
    i64.const 1
    i64.sub
    call 0
    i64.mul
end

, , .

WebAssembly , . . (, WASM- , , ).

WebAssembly 2015 . « » (Chrome, Edge, Safari Firefox) . Internet Explorer WASM , , IE WASM- asm.js-. ( — . IE !)

WebAssembly -


WebAssembly, , , C++. — , . , . (, fastq.bio WebAssembly ). , - , , . WebAssembly , , , « JavaScript» . WebAssembly, , JavaScript-.

. WebAssembly- JavaScript, «» JavaScript. , WASM- , , — , JavaScript-. , WASM- . , , JavaScript-, DOM .

, , - , WASM. « » , WebAssembly. , Blazor Microsoft .NET, WASM-. JavaScript ( ), ( , , ). , Blazor , . — «», — , JavaScript, .

Blazor, , , WebAssembly. , , Pyodide. Python- .

— . WebAssembly, , , C++ Rust, . WASM , JavaScript, JavaScript-, , Angular, React Vue.

WebAssembly . — , « ». «» , , , -. , WebAssembly , . , Blazor — WebAssembly, , DOM. , , .

WebAssembly — , JavaScript. , , - JavaScript — . , , - , , . . WebAssembly , , « », . , WebAssembly JavaScript WebAssembly.

, WebAssembly , JavaScript. . JavaScript Java-, -. - , . , , .

! , WebAssembly JavaScript?


Source: https://habr.com/ru/post/fr472338/


All Articles