javascript from() 方法将一个类数组对象转换成真实的数组
<strong>Array.from()</strong>
方法可以将一个类数组对象或可迭代对象转换成真实的数组。
from语法
<code class="language-javascript">Array.from(arrayLike[, mapFn[, thisArg]]) </code>
from参数
参数 | 说明 |
arrayLike | 想要转换成真实数组的类数组对象或可迭代对象。 |
mapFn | 可选参数,如果指定了该参数,则最后生成的数组会经过该函数的加工处理后再返回。 |
thisArg | 可选参数,执行 mapFn 函数时 this 的值。 |
你可以使用 Array.from()
将下面的两种对象转换成数组:
- 类数组对象(拥有一个
length
属性和若干索引属性的任意对象) - 可迭代对象(你可以从它身上迭代出若干个元素的对象,比如有
Map
和Set
等)
Array.from()
方法有一个可选参数 mapFn
,让你可以在最后生成的数组上再执行一次 map
方法后再返回。也就是说 Array.from(obj, mapFn, thisArg)
就相当于 Array.from(obj).map(mapFn, thisArg),
除非创建的不是可用的中间数组。 这对一些数组的子类,
如 typed arrays 来说很重要, 因为中间数组的值在调用 map() 时需要是适当的类型。
from()
的 length
属性为 1 。
from
实例:
<code class="language-javascript">// 将类数组对象(arguments)转换成数组 (function () { var args = Array.from(arguments); return args; })(1, 2, 3); // [1, 2, 3] // 将可迭代对象(Set 对象)转换成数组 Array.from(Set(["foo", window])); // ["foo", window] // Map 对象也可以 var m = new Map([[1, 2], [2, 4], [4, 8]]); Array.from(m); // [[1, 2], [2, 4], [4, 8]] // 字符串对象既是类数组又是可迭代对象 Array.from("foo"); // ["f", "o", "o"] // 使用 map 函数转换数组元素 Array.from([1, 2, 3], x => x + x); // [2, 4, 6] // 生成一个数字序列 Array.from({length:5}, (v, k) => k); // [0, 1, 2, 3, 4]</code>
from兼容性解决方法
ECMA-262 第六版标准添加了 Array.from
。有些实现中可能尚未包括。你可以通过在脚本前添加如下内容作为替代方法,以使用未原生支持的 Array.from
方法。该算法按照 ECMA-262 第六版中的规范实现,并假定Object
和 TypeError
有其本身的值, callback.call
对应 Function.prototype.call
。此外,鉴于无法使用 Polyfill 实现真正的的迭代器,该实现不支持规范中定义的泛型可迭代元素。
<code class="language-javascript">// Production steps of ECMA-262, Edition 6, 22.1.2.1 // Reference: https://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.from if (!Array.from) { Array.from = (function () { var toStr = Object.prototype.toString; var isCallable = function (fn) { return typeof fn === 'function' || toStr.call(fn) === '[object Function]'; }; var toInteger = function (value) { var number = Number(value); if (isNaN(number)) { return 0; } if (number === 0 || !isFinite(number)) { return number; } return (number > 0 ? 1 : -1) * Math.floor(Math.abs(number)); }; var maxSafeInteger = Math.pow(2, 53) - 1; var toLength = function (value) { var len = toInteger(value); return Math.min(Math.max(len, 0), maxSafeInteger); }; // The length property of the from method is 1. return function from(arrayLike/*, mapFn, thisArg */) { // 1. Let C be the this value. var C = this; // 2. Let items be ToObject(arrayLike). var items = Object(arrayLike); // 3. ReturnIfAbrupt(items). if (arrayLike == null) { throw new TypeError("Array.from requires an array-like object - not null or undefined"); } // 4. If mapfn is undefined, then let mapping be false. var mapFn = arguments.length > 1 ? arguments[1] : void undefined; var T; if (typeof mapFn !== 'undefined') { // 5. else // 5. a If IsCallable(mapfn) is false, throw a TypeError exception. if (!isCallable(mapFn)) { throw new TypeError('Array.from: when provided, the second argument must be a function'); } // 5. b. If thisArg was supplied, let T be thisArg; else let T be undefined. if (arguments.length > 2) { T = arguments[2]; } } // 10. Let lenValue be Get(items, "length"). // 11. Let len be ToLength(lenValue). var len = toLength(items.length); // 13. If IsConstructor(C) is true, then // 13. a. Let A be the result of calling the [[Construct]] internal method of C with an argument list containing the single item len. // 14. a. Else, Let A be ArrayCreate(len). var A = isCallable(C) ? Object(new C(len)) : new Array(len); // 16. Let k be 0. var k = 0; // 17. Repeat, while k </code>

Outils d'IA chauds

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

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

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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

Sujets chauds

Conseils pratiques pour convertir des lettres anglaises pleine chasse en formes demi-largeur. Dans la vie moderne, nous sommes souvent en contact avec des lettres anglaises et nous devons souvent saisir des lettres anglaises lorsque nous utilisons des ordinateurs, des téléphones portables et d'autres appareils. Cependant, nous rencontrons parfois des lettres anglaises pleine chasse et nous devons utiliser la forme demi-largeur. Alors, comment convertir des lettres anglaises pleine chasse en demi-chasse ? Voici quelques conseils pratiques pour vous. Tout d’abord, les lettres et chiffres anglais pleine chasse font référence à des caractères qui occupent une position pleine largeur dans la méthode de saisie, tandis que les lettres et chiffres anglais demi-chasse occupent une position pleine largeur.

Dans cet article, nous allons vous montrer comment convertir des fichiers OpenDocumentTextDocument (ODT) en Microsoft Word (Docx, DOC, etc.). Format. Comment convertir ODT en Word sous Windows 11/10 Voici comment convertir des documents ODT au format DOC ou DOCX sur un PC Windows : Convertir ODT en Word à l'aide de WordPad ou Word La première méthode que nous allons vous montrer consiste à utiliser WordPad ou MicrosoftWord pour convertir ODT en Word. Voici les étapes pour y parvenir : Tout d’abord, ouvrez l’application WordPad à l’aide du menu Démarrer. Maintenant, allez à

La technologie de détection et de reconnaissance des visages est déjà une technologie relativement mature et largement utilisée. Actuellement, le langage d'application Internet le plus utilisé est JS. La mise en œuvre de la détection et de la reconnaissance faciale sur le front-end Web présente des avantages et des inconvénients par rapport à la reconnaissance faciale back-end. Les avantages incluent la réduction de l'interaction réseau et de la reconnaissance en temps réel, ce qui réduit considérablement le temps d'attente des utilisateurs et améliore l'expérience utilisateur. Les inconvénients sont les suivants : il est limité par la taille du modèle et la précision est également limitée ; Comment utiliser js pour implémenter la détection de visage sur le web ? Afin de mettre en œuvre la reconnaissance faciale sur le Web, vous devez être familier avec les langages et technologies de programmation associés, tels que JavaScript, HTML, CSS, WebRTC, etc. Dans le même temps, vous devez également maîtriser les technologies pertinentes de vision par ordinateur et d’intelligence artificielle. Il convient de noter qu'en raison de la conception du côté Web

Les fichiers AI font référence aux fichiers graphiques vectoriels créés par le logiciel Adobe Illustrator (AI en abrégé), tandis que les fichiers CDR font référence aux fichiers graphiques vectoriels créés par le logiciel CorelDRAW. Ces deux logiciels étant développés par des fabricants différents, leurs formats de fichiers sont différents et ne peuvent pas être directement convertis l'un vers l'autre. Cependant, nous pouvons convertir les fichiers AI en fichiers CDR via certaines méthodes. Une méthode de conversion couramment utilisée sera présentée ci-dessous. Étape 1 : Exporter les fichiers AI au format EPS AdobeIllust

La conversion d'une machine virtuelle (VM) en machine physique est le processus de migration des instances virtuelles et des logiciels d'application associés vers une plate-forme matérielle physique. Cette conversion permet d'optimiser les performances du système d'exploitation et l'utilisation des ressources matérielles. Cet article vise à fournir un aperçu approfondi de la façon d’effectuer cette conversion. Comment mettre en œuvre la migration d’une machine virtuelle vers une machine physique ? Généralement, le processus de conversion entre une machine virtuelle et une machine physique est effectué en dehors de la machine virtuelle par un logiciel tiers. Ce processus comprend plusieurs étapes impliquant la configuration des machines virtuelles et le transfert de ressources. Préparez la machine physique : la première étape consiste à vous assurer que la machine physique répond à la configuration matérielle requise pour Windows. Nous devons sauvegarder les données sur une machine physique car le processus de conversion écrasera les données existantes. *Nom d'utilisateur et mot de passe pour un compte administrateur avec des droits d'administrateur pour créer des images système. sera virtuel

Conversion de l'heure Golang : Comment convertir l'horodatage en chaîne Dans Golang, l'opération temporelle est l'une des opérations les plus courantes. Parfois, nous devons convertir l'horodatage en chaîne pour un affichage ou un stockage facile. Cet article explique comment utiliser Golang pour convertir des horodatages en chaînes et fournit des exemples de code spécifiques. 1. Conversion des horodatages et des chaînes Dans Golang, les horodatages sont généralement exprimés sous la forme de nombres entiers, qui représentent le nombre de secondes entre le 1er janvier 1970 et l'heure actuelle. La chaîne est

Cet article présentera en détail comment convertir des mois en PHP en mois en anglais et donnera des exemples de code spécifiques. Dans le développement PHP, nous devons parfois convertir des mois numériques en mois anglais, ce qui est très pratique dans certains scénarios de traitement de dates ou d'affichage de données. Les principes de mise en œuvre, les exemples de code spécifiques et les précautions seront expliqués en détail ci-dessous. 1. Principe de mise en œuvre En PHP, vous pouvez convertir des mois numériques en mois anglais en utilisant la classe DateTime et la méthode de format. Date

QQ Music permet à tout le monde de regarder des films et de soulager l'ennui. Vous pouvez utiliser ce logiciel tous les jours pour satisfaire facilement vos besoins. Un grand nombre de chansons de haute qualité sont disponibles pour que tout le monde puisse les écouter. la prochaine fois que vous les écouterez, vous n'aurez pas besoin d'une connexion Internet. Les chansons téléchargées ici ne sont pas au format MP3 et ne peuvent pas être utilisées sur d'autres plateformes. Une fois l'abonnement expiré, il n'y a aucun moyen de les réécouter. , de nombreux amis souhaitent convertir les chansons au format MP3 Ici, l'éditeur explique Vous proposez des méthodes pour que tout le monde puisse les utiliser ! 1. Ouvrez QQ Music sur votre ordinateur, cliquez sur le bouton [Menu principal] dans le coin supérieur droit, cliquez sur [Transcodage audio], sélectionnez l'option [Ajouter une chanson] et ajoutez les chansons qui doivent être converties ; les chansons, cliquez pour sélectionner Convertir en [mp3]
