Promesses ES6 ES6 Les promesses sont des machines à états finis et nécessitent donc des implémentations complexes. Au-delà de cela, la spécification Promise / A + comporte beaucoup de brouillons: Surchargé then (carte / chaîne) Aplanissement récursif / assimilation alors capable Levage automatique Plusieurs abonnés (multidiffusion) Évaluation avide La distribution multidiffusion et l'évaluation approfondie sont […]
Je me suis confondu quand je vois des exemples de fonctions anonymes auto-invoquées en Javascript comme ceci: (function () { return val;}) (); Existe-t-il une différence entre cette syntaxe et ce qui suit: function() { return val;} (); Si quelqu'un peut me donner une différence concrète, cela aiderait à mettre au repos une question qui […]
Il me manque une option pour obtenir le numéro d'index dans la fonction de la map l'aide de la List de Immutable.js : var list2 = list1.map(mapper => { a: mapper.a, b: mapper.index??? }).toList(); La documentation montre que map() renvoie Iterable<number, M> . Y a-t-il un moyen élégant de ce dont j'ai besoin?
Lodash me permet de vérifier l'appartenance à des types de données de base avec: _.includes([1, 2, 3], 2) > true Mais ce qui suit ne fonctionne pas: _.includes([{"a": 1}, {"b": 2}], {"b": 2}) > false Cela me confond parce que les méthodes suivantes qui recherchent une collection semblent bien fonctionner: _.where([{"a": 1}, {"b": 2}], {"b": […]
Lorsque vous travaillez avec des tableaux, des représentations intermédiaires sont nécessaires régulièrement, en particulier dans le cadre de la programmation fonctionnelle, dans laquelle les données sont souvent traitées comme immuables: const square = x => x * x; const odd = x => (x & 1) === 1; let xs = [1,2,3,4,5,6,7,8,9]; // unnecessary intermediate […]
Je travaille dans TS mais afficherai le code tsc -> ES6 ci-dessous. J'ai une fonction 'isDigit' qui renvoie true si le code de caractère est dans la gamme de chiffres 0 à 9. Cette fonction (isDigit) doit être transmise en argument à une fonction d'ordre supérieur. const isDigit = (char, charC = char.charCodeAt(0)) => (charC […]
Il existe de nombreux bons articles sur la théorie de la programmation fonctionnelle en JavaScript. Certains contiennent même des exemples de code montrant la différence entre la programmation impérative / orientée objet et la programmation déclarative / fonctionnelle. Mais je n'ai trouvé aucun qui montre, avec des exemples simples de code JavaScript, comment gérer les […]
Dans Javascript, si j'ai un tableau de tableaux représentant une matrice, disons x = [ [1,2,3,4], [5,6,7,8], [9,10,11,12] ]; La sommation "horizontale" est facile et peut se faire comme x.map(function(y){ return y.reduce(function(a,b){ return a+b; }); }); Maintenant, je voudrais calculer la somme "verticale", qui peut être effectuée x.reduce(function(a, b){ return a.map(function(v,i){ return v+b[i]; }); }); […]
Moyens d'appeler une fonction Considérez cette fonction simple: function my(p) { console.log(p) } Je peux l'appeler comme ceci: my("Hello"); Et aussi comme ça: my.call(this, "Hello"); De plus, ceci est possible: Function.prototype.call.call(my, this, "Hello"); Un raccourci pour la manière fonctionnelle Je suis intéressé par la dernière option – la plus fonctionnelle, mais comme c'est trop long, […]
Comment puis-je me lier à droite de la fonction? Exemple: var square = Math.pow.bindRight(2); console.log(square(3)); //desired output: 9