background preloader

Getify/You-Dont-Know-JS: A book series on JavaScript. @YDKJS on twitter.

Getify/You-Dont-Know-JS: A book series on JavaScript. @YDKJS on twitter.
Related:  JavaScript

Spec Wiki JavaScript Éloquent : Une introduction moderne à la programmation Utiliser les différents tests d'égalité JavaScript fournit trois opérations permettant de comparer des valeurs : Selon la comparaison qu'on souhaite effectuer, on choisira une de ces opérations. En résumé, l'égalité faible effectuera une conversion des deux éléments à comparer avant d'effectuer la comparaison, l'égalité stricte effectuera la même comparaison mais sans conversion préalable (elle renverra toujours false si les types des deux valeurs comparées sont différents), enfin Object.is() se comportera comme l'égalité stricte sauf pour les valeurs NaN, -0 et +0 : pour Object.is(), -0 et +0 seront différents mais on aura Object.is(NaN, NaN) qui sera true. L'égalité stricte avec ===Edit L'égalité stricte compare deux valeurs et teste leur égalité. Ce test d'égalité stricte est presque toujours la meilleure des opérations à considérer pour ces tests. L'égalité faible avec ==Edit Le test d'égalité faible compare deux valeurs après les avoir converties en valeurs d'un même type. Égalité de valeursEdit Égalité de valeurs nullesEdit

A Gentle Introduction to Functional JavaScript: Part 1 This is part one of a threefour-part series introducing ‘functional’ programming in JavaScript. In this article we take a look at the building blocks that make JavaScript a ‘functional’ language, and examine why that might be useful. What the Func? What is all the hype about Functional JavaScript? To me, learning functional programming is a little bit like getting a Thermomix: It takes a bit of up-front investment;You’ll start telling all your friends and family about it how awesome it is; andThey start to wonder if you’ve joined some kind of cult. But, it does make certain tasks a whole lot easier. Building Blocks Let’s start with some of the basic features of JavaScript that make ‘functional’ programming possible, before we move on to why it’s a good idea. var myContainer = "Hey everybody! That creates a container called myContainer and sticks a string in it. function log(someVariable) { console.log(someVariable); return someVariable;} And you can call a function like this: Hmmmm. Read on…

Utilisez la console JavaScript des navigateurs Concevoir un site dynamique implique de faire appel à JavaScript, langage de plus en plus populaire et puissant. Afin de donner les bons outils aux développeurs web, les navigateurs se sont peu à peu équipés de consoles de développement permettant d'entrer des instructions à la volée, avec bien souvent de l'auto-complétion, de consulter les données en mémoire ou d'explorer les fonctions et variables disponibles. Des commandes plus avancées visent à définir des points d'arrêt et d'inspecter la pile des appels. La console est un outil indispensable lorsque l'on souhaite écrire quelques lignes de JavaScript, ou bien concevoir des scripts plus évolués notamment avec des frameworks tels que jQuery. Accès La console se retrouve bien souvent dans un menu orienté pour les développeurs, à l'aide d'une touche de raccourci, ou dans des extensions spécifiques telles que Firebug pour Firefox. Aperçus Internet Explorer Google Chrome Mozilla Firefox Opera Astuces Fonctions utiles Journal console.log(fruits);

Learning JavaScript Design Patterns Design patterns are reusable solutions to commonly occurring problems in software design. They are both exciting and a fascinating topic to explore in any programming language. One reason for this is that they help us build upon the combined experience of many developers that came before us and ensure we structure our code in an optimized way, meeting the needs of problems we're attempting to solve. Design patterns also provide us a common vocabulary to describe solutions. This can be significantly simpler than describing syntax and semantics when we're attempting to convey a way of structuring a solution in code form to others. In this book we will explore applying both classical and modern design patterns to the JavaScript programming language. Target Audience This book is targeted at professional developers wishing to improve their knowledge of design patterns and how they can be applied to the JavaScript programming language. Acknowledgments Credits Reading We already use patterns everyday

Coder en Javascript dans une console Depuis l’apparition des consoles Javascript, on peut debugger plus facilement des erreurs de scripts, qui à l’époque d’IE6 & co se faisait à coup de alert(). Un chose que je ne trouve pas très répandu, c’est d’utiliser ces consoles pour coder directement, de petit morceaux de code, sans se (re)taper d’ajouter du script inline, ou un fichier juste pour avoir bonne conscience. Avec une console avancée, on peut même éditer des scripts en cours d’exécution ! A quoi ça sert de coder du Javascript dans une console ? Un exemple très simple sera plus parlant : vous voyez un paragraphe de texte et vous vous demandez combien il comporte de caractères. $0 est très simple d’utilisation, et peut être très utile. Utilisation : compter le texte d’un paragraphe Admettons que vous cherchez à compter le nombre de caractères dans une <div>, inspectez là, puis dans votre console entrez-y la ligne suivante: $0.innerHTML.length Et voilà vous avez votre résultat ! Coder plus d’un ligne jQuery.noConflict();

Qu’est-ce qu’un callback ? mettreOn nous a parfois reproché de ne pas faire assez de tutos pour débutant. C’est pas faux, d’autant que quand j’ai commencé j’étais bien content que le site du zéro ait choisi de se spécialiser là dedans. Les tutos pour débutant sont vraiment la pierre angulaire de l’attractivité d’une techno. Donc, un jour vous vous baladez avec vos premiers succès en prog, vous vous chauffer à utiliser une library externe (ce qui fait toujours peur au début) et il y a un truc que vous ne savez pas faire. Vous posez la question sur un forum, et on vous répond: “mais c’est simple, il suffit de passer un callback“. Doh. Rappel: on peut passer des fonctions en argument Une fonction, ce n’est pas juste un bout de code auquel on donne un nom. En pratique, ça veut dire qu’on peut manipuler la fonction sans l’éxécuter. Ca veut dire aussi qu’on peut passer une fonction comme argument: Mais Za Koi ça sert ? Et bien à dire qu’on va exécuter du code, même si on ne sait pas encore à l’avance quel est ce code.

Un gros Troll de plus sur Javascript Un commentaire très pertinent de Kontre m’a interpellé dernièrement : si Javascript est si pourri, pourquoi tout le monde s’y intéresse ? TD;DR :L’inertie technique. Il faut bien comprendre que PERSONNE ne s’intéresse à Javascript directement. Les gens s’intéressent passionnément à la programmation Web. Et il se trouve que, concernant la programmation côté client, il y a QUE Javascript de disponible. Quand Ajax est arrivé, des mecs brillants ont rendu le Web plus interactif. Parce que c’était la seule solution dispo. Avant, personne ne s’intéressait à ce truc. Personne n’a réfléchi. L’heure du Web 2.0 a alors sonné, et là les business ont eu besoin de puissance de feu. Google a utilisé massivement les pages dynamiques, et devant le constat des performances misérables de la seule techno qu’il y avait a dispo, il a pondu chrome, et sa VM Javascript ultra performante. Personne. Cherche Dev Javascript pour travailler sur projet innovant dans une start up à fort potentiel de croissance. Ruby :

Les exceptions et les bonnes pratiques Bien souvent, un programme doit traiter des situations exceptionnelles qui n'ont pas un rapport direct avec sa tâche principale. Ceci oblige le programmeur à réaliser de nombreux tests avant d'écrire les instructions utiles du programme. Cette situation a deux inconvénients majeurs : Le programmeur peut omettre de tester une condition ; Le code devient vite illisible car la partie utile est masquée par les tests. Java remédie à cela en introduisant un Mécanisme de gestion des exceptions qui est l'objet de cet article. Grâce à ce mécanisme, on peut améliorer grandement la lisibilité du code en découplant le code utile de celui qui traite des situations exceptionnelles, et on peut aussi déléguer au langage la tâche d'énumération des tests à effectuer. Une situation exceptionnelle peut être assimilée à une erreur (dans le cadre de cet article), c'est à dire une situation qui est externe à la tâche principale d'un programme. IV-A. Il faudrait plutôt écrire ceci : IV-B. IV-C. VI-A. VI-B. VI-C.

Des ressources Javascript pour mieux comprendre et domestiquer le DOM Aujourd'hui, le blog du Webdesign vous propose une liste de ressources Javascript qui vous permettons de mieux vous occuper de votre DOM ! Au programme : Modification, diff, détection de fonctionnalités, et bien d'autres choses ! Bonne découverte Qu'est-ce que le DOM ? Le Document Object Model (ou DOM) est un standard du W3C qui décrit une interface indépendante de tout langage de programmation et de toute plate-forme, permettant à des programmes informatiques et à des scripts d'accéder ou de mettre à jour le contenu, la structure ou le style de documents HTML3 et XML4. Source : Wikipedia En clair, le DOM est la vision qu'a votre navigateur du code source HTML du site où vous êtes en train de visiter, et c'est à travers la modification de ce DOM que vous pourrez interagir avec votre page en Javascript. Le plus important à retenir est que le DOM n'est pas votre code HTML, mais une interprétation de ce dernier. Détecter les fonctionnalités disponibles Modernizr Feature.js Interagir avec le DOM

API, une introduction Vous êtes-vous déjà demandé comment Facebook affiche automatiquement vos photos Instagram ? Brian Cooksey commence ici une série d'articles passionnants sur les API, dans un langage clair, imagé, sans jargon inutile. Par Brian Cooksey Vous êtes-vous déjà demandé comment Facebook affiche automatiquement vos photos Instagram ? Dans cette série d'articles (1), nous allons passer en revue tout ce qui est nécessaire pour faire communiquer entre eux deux systèmes. À qui s'adressent ces articles ? Introduction Les API (application programming interface, en français interfaces de programmation) forment une part importante du web. Bien connaître le fonctionnement des API est de plus en plus important lorsqu'on travaille dans le développement web. Un cadre de référence Quand on parle d'API, les conversations se focalisent en général sur des concepts abstraits, mais nous allons partir de quelque chose de concret et commencer par un objet physique : le serveur. Qu'est-ce qu'une API ? Récapitulation

Fun with code oop - Python - why use "self" in a class?

Related: