Maison interface Web js tutoriel Explication détaillée d'exemples étendus de différents types de données dans es6

Explication détaillée d'exemples étendus de différents types de données dans es6

Jun 26, 2017 am 10:24 AM
扩展 数据 类型

1. L'extension de chaîne

  1. ajoute un itérateur à la chaîne, qui peut être parcouru par for...of

  2. inclut , StartsWith et EndsWith renvoient tous deux des valeurs booléennes et prennent en charge le deuxième paramètre (la position de départ de la recherche EndsWith cible les n premiers caractères, et les deux autres vont du nième à la fin

  3. repeat renvoie une nouvelle chaîne, et le paramètre est le nombre de répétitions (les décimales seront arrondies, les nombres négatifs ou Infnity signalera une erreur, 0 à -1 équivaut à 0, et la chaîne sera convertie en nombres)

  4. padStart et padEnd sont complétés en tête ou en queue. Le premier paramètre est la longueur minimale de la chaîne et le deuxième paramètre est la chaîne utilisée pour la complétion.

  5. modèle String `${...}`
  6. 2. Expansion numérique

    Number.isFinite vérifie si une valeur est finie, renvoie toujours faux pour les valeurs non numériques
  1. Number.isNaN vérifie si une valeur est NaN Seul NaN renvoie vrai
  2. La méthode traditionnelle isFinite isNaN ; appellera d'abord Number() pour convertir la valeur non numérique Convertir en valeur numérique


  3. Number.parseInt(), Number.parseFloat() sont les mêmes que la méthode traditionnelle, le le but est de réduire la modularité globale de la méthode et du langage
  4. Number.isInteger() détermine s'il s'agit d'un entier
  5. Number.EPSILON est un très petite constante. Si l'erreur de calcul de la virgule flottante est inférieure à cette valeur, c'est ok
  6. La plage entière exacte de JS : -2^53~2^53 (à l'exclusion des deux). se termine),
  7. Number.MAX_SAFE_INTEGER = Math.pow(2, 53) - 1;

    Number.MIN_SAFE_INTEGER = -Number.MAX_SAFE_INTEGER;
    Number.isSafeInteger() est utilisé pour déterminer si un entier se situe dans cette plage ;

  8. Math.trunc() supprime la partie décimale et renvoie une partie entière
  9. Math.sign() détermine s'il s'agit d'un entier négatif ou de 0 ; >Math.cbrt() calcule la racine cubique d'un nombre ; il existe également des méthodes logarithmiques et des méthodes de fonctions trigonométriques ;

    opérateur exponentiel 2 * * 3 === 8, différent de l'implémentation Math.pow, pour des opérations particulièrement volumineuses ; , le dernier chiffre du résultat de l'opération est différent


    3. L'extension du tableau

Array.from peut convertir des objets de type tableau et objets traversables en tableaux, et l'opérateur spread peut également convertir certains objets en tableaux ;
    peut accepter un deuxième paramètre, similaire à la méthode map , renvoie la valeur traitée dans un tableau

  1. Array.of convertit un ensemble de valeurs en un tableau
  2. copyWithin copie le membre à l'emplacement spécifié vers d'autres emplacements
  3. Array.prototype.copyWithin(target; , start = 0, end = this.length)

  4. find trouve le premier membre qualifié, le paramètre est une fonction de rappel
  5. findIndex renvoie la position du premier membre éligible du tableau ;

  6. fill remplit le tableau avec la valeur donnée, et les deuxième et troisième paramètres peuvent spécifier les positions de début et de fin
  7. clés, valeurs ; , entrées
  8. inclut, indexOf n'est pas assez sémantique et est utilisé en interne pour juger,
  9. [NaN] .indexOf(NaN) // -1 , [NaN].includes (NaN) // true
  10. Le has de Map est utilisé pour trouver le nom de la clé, et le has de Set est utilisé pour trouver la valeur



    La position vide du tableau n'a pas de valeur, 0 in [,,] // false, es6 convertira la position vide en indéfini, et la position vide doit être évitée
  11. L'extension de la fonction

Quatre. 🎜>
  1. permet de définir une valeur par défaut pour la fonction. Si un paramètre non-tail est défini sur une valeur par défaut, en fait ce paramètre ne peut pas être omis
    Après avoir défini la valeur par défaut, l'attribut length de la fonction renverra le nombre de paramètres sans valeur par défaut spécifiée
    Si le paramètre avec une valeur par défaut définie n'est pas le dernier paramètre, alors l'attribut length ne sera plus compté dans le paramètres suivants ;

  2. Une fois la valeur par défaut du paramètre définie, le paramètre formera une portée (contexte) distincte lorsque la fonction est déclarée et initialisée. Une fois l'initialisation terminée, cette portée disparaîtra. Ce comportement de syntaxe n'apparaîtra pas lorsque la valeur par défaut du paramètre n'est pas définie.

  3. Paramètre de repos (... nom de la variable)

  4. Opérateur d'extension (...), convertit un tableau en séquence de paramètres séparés par des virgules .

    /* 替代数组的apply方法 */// ES5的写法function f(x, y, z) {  // ...}var args = [0, 1, 2];
    f.apply(null, args);// ES6的写法function f(x, y, z) {  // ...}var args = [0, 1, 2];
    f(...args);/* --------------------------------- */// ES5的写法Math.max.apply(null, [14, 3, 77])// ES6的写法Math.max(...[14, 3, 77])// 等同于Math.max(14, 3, 77);/* --------------------------------- */// ES5的写法var arr1 = [0, 1, 2];var arr2 = [3, 4, 5];
    Array.prototype.push.apply(arr1, arr2);// ES6的写法var arr1 = [0, 1, 2];var arr2 = [3, 4, 5];
    arr1.push(...arr2);
    Copier après la connexion
  5. Remarque sur l'utilisation des fonctions fléchées :

    (1) L'objet this dans le corps de la fonction est l'endroit où il s'agit d'un objet défini, plutôt que de l'objet dans lequel il est utilisé.

    (2) ne peut pas être utilisé comme constructeur, c'est-à-dire que la commande new ne peut pas être utilisée, sinon une erreur sera générée.

    (3) L'objet arguments ne peut pas être utilisé, car l'objet n'existe pas dans le corps de la fonction. Si vous souhaitez l'utiliser, vous pouvez utiliser le paramètre rest à la place.

    (4) La commande yield ne peut pas être utilisée, donc la fonction flèche ne peut pas être utilisée comme fonction Générateur.

5. Extensions d'objet

  1. Notation d'abréviation d'attribut

  2. Attribut expression de nom, [nom de la variable]

  3. L'attribut name de la méthode renvoie le nom de la fonction (c'est-à-dire le nom de la méthode)

  4. Objet. C'est fondamentalement la même chose que ===. La différence est que l'un est que +0 n'est pas égal à -0, et l'autre est que NaN est égal à lui-même

    // es5实现Object.isObject.defineProperty(Object, 'is', {
      value: function(x, y) {if (x === y) {      // 针对+0 不等于 -0的情况  return x !== 0 || 1 / x === 1 / y;
        }// 针对NaN的情况return x !== x && y !== y;
      },
      configurable: true,
      enumerable: false,
      writable: true});
    Copier après la connexion
  5. Object.assign(target, o1, o2) est utilisé pour fusionner des objets avec le même nom, les précédentes seront écrasées plus tard ; la copie superficielle implémentée
    ne peut pas. être convertis en raison d'undefined et null en objets, donc s'ils sont utilisés comme paramètres, une erreur sera signalée

  6. La méthode Object.getOwnPropertyDescriptor peut obtenir l'objet de description de cette propriété ;

  7. Parcours des propriétés :
    for...in, Object.keys, Object.getOwnPropertyNames(obj), Object.getOwnPropertySymbols(obj), Reflect.ownKeys(obj)

  8. __proto__ a la même fonction que Object.setPrototypeOf(), utilisée pour définir l'objet prototype d'un objet, Object.getPrototypeOf()

  9. Object.keys(), Object.values(), Object.entries()

  10. Object.getOwnPropertyDescriptors renvoie l'objet de description de toutes ses propres propriétés (propriétés non héritées) du spécifié objet

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Utilisez ddrescue pour récupérer des données sous Linux Utilisez ddrescue pour récupérer des données sous Linux Mar 20, 2024 pm 01:37 PM

DDREASE est un outil permettant de récupérer des données à partir de périphériques de fichiers ou de blocs tels que des disques durs, des SSD, des disques RAM, des CD, des DVD et des périphériques de stockage USB. Il copie les données d'un périphérique bloc à un autre, laissant derrière lui les blocs corrompus et ne déplaçant que les bons blocs. ddreasue est un puissant outil de récupération entièrement automatisé car il ne nécessite aucune interruption pendant les opérations de récupération. De plus, grâce au fichier map ddasue, il peut être arrêté et repris à tout moment. Les autres fonctionnalités clés de DDREASE sont les suivantes : Il n'écrase pas les données récupérées mais comble les lacunes en cas de récupération itérative. Cependant, il peut être tronqué si l'outil est invité à le faire explicitement. Récupérer les données de plusieurs fichiers ou blocs en un seul

Open source! Au-delà de ZoeDepth ! DepthFM : estimation rapide et précise de la profondeur monoculaire ! Open source! Au-delà de ZoeDepth ! DepthFM : estimation rapide et précise de la profondeur monoculaire ! Apr 03, 2024 pm 12:04 PM

0. À quoi sert cet article ? Nous proposons DepthFM : un modèle d'estimation de profondeur monoculaire génératif de pointe, polyvalent et rapide. En plus des tâches traditionnelles d'estimation de la profondeur, DepthFM démontre également des capacités de pointe dans les tâches en aval telles que l'inpainting en profondeur. DepthFM est efficace et peut synthétiser des cartes de profondeur en quelques étapes d'inférence. Lisons ce travail ensemble ~ 1. Titre des informations sur l'article : DepthFM : FastMonocularDepthEstimationwithFlowMatching Auteur : MingGui, JohannesS.Fischer, UlrichPrestel, PingchuanMa, Dmytr

Google est ravi : les performances de JAX surpassent Pytorch et TensorFlow ! Cela pourrait devenir le choix le plus rapide pour la formation à l'inférence GPU Google est ravi : les performances de JAX surpassent Pytorch et TensorFlow ! Cela pourrait devenir le choix le plus rapide pour la formation à l'inférence GPU Apr 01, 2024 pm 07:46 PM

Les performances de JAX, promu par Google, ont dépassé celles de Pytorch et TensorFlow lors de récents tests de référence, se classant au premier rang sur 7 indicateurs. Et le test n’a pas été fait sur le TPU présentant les meilleures performances JAX. Bien que parmi les développeurs, Pytorch soit toujours plus populaire que Tensorflow. Mais à l’avenir, des modèles plus volumineux seront peut-être formés et exécutés sur la base de la plate-forme JAX. Modèles Récemment, l'équipe Keras a comparé trois backends (TensorFlow, JAX, PyTorch) avec l'implémentation native de PyTorch et Keras2 avec TensorFlow. Premièrement, ils sélectionnent un ensemble de

Vitesse Internet lente des données cellulaires sur iPhone : correctifs Vitesse Internet lente des données cellulaires sur iPhone : correctifs May 03, 2024 pm 09:01 PM

Vous êtes confronté à un décalage et à une connexion de données mobile lente sur iPhone ? En règle générale, la puissance de l'Internet cellulaire sur votre téléphone dépend de plusieurs facteurs tels que la région, le type de réseau cellulaire, le type d'itinérance, etc. Vous pouvez prendre certaines mesures pour obtenir une connexion Internet cellulaire plus rapide et plus fiable. Correctif 1 – Forcer le redémarrage de l'iPhone Parfois, le redémarrage forcé de votre appareil réinitialise simplement beaucoup de choses, y compris la connexion cellulaire. Étape 1 – Appuyez simplement une fois sur la touche d’augmentation du volume et relâchez-la. Ensuite, appuyez sur la touche de réduction du volume et relâchez-la à nouveau. Étape 2 – La partie suivante du processus consiste à maintenir le bouton sur le côté droit. Laissez l'iPhone finir de redémarrer. Activez les données cellulaires et vérifiez la vitesse du réseau. Vérifiez à nouveau Correctif 2 – Changer le mode de données Bien que la 5G offre de meilleures vitesses de réseau, elle fonctionne mieux lorsque le signal est plus faible

La vitalité de la super intelligence s'éveille ! Mais avec l'arrivée de l'IA qui se met à jour automatiquement, les mères n'ont plus à se soucier des goulots d'étranglement des données. La vitalité de la super intelligence s'éveille ! Mais avec l'arrivée de l'IA qui se met à jour automatiquement, les mères n'ont plus à se soucier des goulots d'étranglement des données. Apr 29, 2024 pm 06:55 PM

Je pleure à mort. Le monde construit à la folie de grands modèles. Les données sur Internet ne suffisent pas du tout. Le modèle de formation ressemble à « The Hunger Games », et les chercheurs en IA du monde entier se demandent comment nourrir ces personnes avides de données. Ce problème est particulièrement important dans les tâches multimodales. À une époque où rien ne pouvait être fait, une équipe de start-up du département de l'Université Renmin de Chine a utilisé son propre nouveau modèle pour devenir la première en Chine à faire de « l'auto-alimentation des données générées par le modèle » une réalité. De plus, il s’agit d’une approche à deux volets, du côté compréhension et du côté génération, les deux côtés peuvent générer de nouvelles données multimodales de haute qualité et fournir un retour de données au modèle lui-même. Qu'est-ce qu'un modèle ? Awaker 1.0, un grand modèle multimodal qui vient d'apparaître sur le Forum Zhongguancun. Qui est l'équipe ? Moteur Sophon. Fondé par Gao Yizhao, doctorant à la Hillhouse School of Artificial Intelligence de l’Université Renmin.

Le premier robot capable d'accomplir de manière autonome des tâches humaines apparaît, avec cinq doigts flexibles et rapides, et de grands modèles prennent en charge l'entraînement dans l'espace virtuel Le premier robot capable d'accomplir de manière autonome des tâches humaines apparaît, avec cinq doigts flexibles et rapides, et de grands modèles prennent en charge l'entraînement dans l'espace virtuel Mar 11, 2024 pm 12:10 PM

Cette semaine, FigureAI, une entreprise de robotique investie par OpenAI, Microsoft, Bezos et Nvidia, a annoncé avoir reçu près de 700 millions de dollars de financement et prévoit de développer un robot humanoïde capable de marcher de manière autonome au cours de la prochaine année. Et l’Optimus Prime de Tesla a reçu à plusieurs reprises de bonnes nouvelles. Personne ne doute que cette année sera celle de l’explosion des robots humanoïdes. SanctuaryAI, une entreprise canadienne de robotique, a récemment lancé un nouveau robot humanoïde, Phoenix. Les responsables affirment qu’il peut accomplir de nombreuses tâches de manière autonome, à la même vitesse que les humains. Pheonix, le premier robot au monde capable d'accomplir des tâches de manière autonome à la vitesse d'un humain, peut saisir, déplacer et placer avec élégance chaque objet sur ses côtés gauche et droit. Il peut identifier des objets de manière autonome

L'US Air Force présente son premier avion de combat IA de grande envergure ! Le ministre a personnellement effectué l'essai routier sans intervenir pendant tout le processus, et 100 000 lignes de code ont été testées 21 fois. L'US Air Force présente son premier avion de combat IA de grande envergure ! Le ministre a personnellement effectué l'essai routier sans intervenir pendant tout le processus, et 100 000 lignes de code ont été testées 21 fois. May 07, 2024 pm 05:00 PM

Récemment, le milieu militaire a été submergé par la nouvelle : les avions de combat militaires américains peuvent désormais mener des combats aériens entièrement automatiques grâce à l'IA. Oui, tout récemment, l’avion de combat IA de l’armée américaine a été rendu public pour la première fois, dévoilant ainsi son mystère. Le nom complet de ce chasseur est Variable Stability Simulator Test Aircraft (VISTA). Il a été personnellement piloté par le secrétaire de l'US Air Force pour simuler une bataille aérienne en tête-à-tête. Le 2 mai, le secrétaire de l'US Air Force, Frank Kendall, a décollé à bord d'un X-62AVISTA à la base aérienne d'Edwards. Notez que pendant le vol d'une heure, toutes les actions de vol ont été effectuées de manière autonome par l'IA ! Kendall a déclaré : "Au cours des dernières décennies, nous avons réfléchi au potentiel illimité du combat air-air autonome, mais cela a toujours semblé hors de portée." Mais maintenant,

Les robots Tesla travaillent dans les usines, Musk : Le degré de liberté des mains atteindra 22 cette année ! Les robots Tesla travaillent dans les usines, Musk : Le degré de liberté des mains atteindra 22 cette année ! May 06, 2024 pm 04:13 PM

La dernière vidéo du robot Optimus de Tesla est sortie, et il peut déjà fonctionner en usine. À vitesse normale, il trie les batteries (les batteries 4680 de Tesla) comme ceci : Le responsable a également publié à quoi cela ressemble à une vitesse 20 fois supérieure - sur un petit "poste de travail", en sélectionnant et en sélectionnant et en sélectionnant : Cette fois, il est publié L'un des points forts de la vidéo est qu'Optimus réalise ce travail en usine, de manière totalement autonome, sans intervention humaine tout au long du processus. Et du point de vue d'Optimus, il peut également récupérer et placer la batterie tordue, en se concentrant sur la correction automatique des erreurs : concernant la main d'Optimus, le scientifique de NVIDIA Jim Fan a donné une évaluation élevée : la main d'Optimus est l'un des robots à cinq doigts du monde. le plus adroit. Ses mains ne sont pas seulement tactiles

See all articles