β , . . 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?
