Asm.js je podmnožina JavaScriptu, která umožňuje optimalizovat kód tak, aby běžel velmi rychle (přičemž nelze využít plnou flexibilitu jazyka). Dosavadní implementace asm.js, kterou připravili v Mozille, byla přibližně dvakrát pomalejší než nativní kód. Nyní se však podařilo dosáhnout vyšší rychlosti – zpomalení oproti nativnímu kódu jen už jen zhruba poloviční.
Největší změnu přineslo přidání datového typu float32 (jednoduchá přesnost), které umožnilo přímo přenášet výpočty s tímto datovým typem z C/C++ do asm.js. Standardní JavaScript pracuje vždy s typem float64, což sice přináší vyšší přesnost, která ale není vždy nutná a přitom znamená zbytečnou výkonovou penalizaci.