9. Utilisation du Yocto-Serial en JavaScript /
EcmaScript
EcmaScript est le nom officiel de la version standardisée du langage de programmation
communément appelé JavaScript. Cette librairie de programmation Yoctopuce utilise les nouvelles
fonctionnalités introduites dans la version EcmaScript 2017. La librairie porte ainsi le nom Librairie
pour JavaScript / EcmaScript 2017, afin de la différentier de la précédente Librairie pour JavaScript
qu'elle remplace.
Cette librairie permet d'accéder aux modules Yoctopuce depuis tous les environnements JavaScript
modernes. Elle fonctionne aussi bien depuis un navigateur internet que dans un environnement
Node.js. La librairie détecte automatiquement à l'initialisation si le contexte d'utilisation est un
browser ou une machine virtuelle Node.js, et utilise les librairies systèmes les plus appropriées en
conséquence.
Les communications asynchrones avec les modules sont gérées dans toute la librairie à l'aide
d'objets Promise, en utilisant la nouvelle syntaxe EcmaScript 2017
pour la gestion des entrées/sorties asynchrones (voir ci-dessous). Cette syntaxe est désormais
disponible sans autres dans la plupart des moteurs JavaScript: il n'est plus nécessaire de transpiler
le code avec Babel ou
tous disponibles au téléchargement:
• Node.js v7.6 and later
• Firefox 52
• Opera 42 (incl. Android version)
• Chrome 55 (incl. Android version)
• Safari 10.1 (incl. iOS version)
• Android WebView 55
• Google V8 Javascript engine v5.5
Si vous avez besoin de la compatibilité avec des anciennes versions, vous pouvez toujours utiliser
Babel pour transpiler votre code et la libriairie vers un standard antérieur de JavaScript, comme
décrit un peu plus bas.
Nous ne recommendons plus l'utilisation de
Beta après 18 mois, et que solliciter l'utilisation d'un outil supplémentaire pour utiliser notre librairie
ne se justifie plus dès lors que
www.yoctopuce.com
. Voici la version minimum requise de vos moteurs JavaScript préférés,
jspm
/
async
await
puisque cet outil est toujours en version
jspm 0.17
sont standardisés.
/
non bloquante
async
await
53