ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScriptでオブジェクトを配列に変換する方法

JavaScriptでオブジェクトを配列に変換する方法

青灯夜游
リリース: 2021-06-22 17:44:32
オリジナル
23469 人が閲覧しました

JavaScript オブジェクトを配列に変換する方法: 1. 「[].slice.call(object)」ステートメントを使用する; 2. 「Array.from(object)」ステートメントを使用する、「Array.from( )" メソッドは、トラバース可能なオブジェクトを配列 (Set および Map データ構造を含む) に変換できます。

JavaScriptでオブジェクトを配列に変換する方法

このチュートリアルの動作環境: Windows 7 システム、JavaScript バージョン 1.8.5、Dell G3 コンピューター。

1. 配列のようなオブジェクトを配列に変換する

1. 配列のようなオブジェクトとは

例:

let arrayLike = {
    '0':"z",
    '1':"y",
    '2':"k",
    length:3
};
ログイン後にコピー

本質は、長さ属性を持つということであり、これは配列の要素を取得するのと同様の方法で取得できますarrayLike [0]、arrayLike[1] 要素、arrayLike.length を通じて疑似配列の長さを取得することもできます。

一般的な疑似配列には、DOM 操作 (document.querySelectorAll('p')) を通じて取得された NodeList コレクションと関数の仮パラメーター引数が含まれます。

2. 変換方法

方法 1: [].slice.call(arrayLike) 経由

//获取当前dom的span组成的伪数组
let spanDomArr = document.querySelectorAll('span');
 
//通过数组的方法forEach遍历spanDomArr
let arr = [].slice.call(spanDomArr);
 
//因为spanDomArr是伪数组,不支持数组的forEach,所以需要先转换成数组
arr.forEach(function(span){
    console.log(span)
});
ログイン後にコピー

方法 2: Array.from(arrayLike) を使用する

//获取当前dom的span组成的伪数组
let spanDomArr = document.querySelectorAll('span');
 
//通过数组的方法forEach遍历spanDomArr
//因为spanDomArr是伪数组,不支持数组的forEach,所以需要先转换成数组
Array.from(spanDomArr).forEach(function(span){
    console.log(span)
});
ログイン後にコピー

2. Extend-Array.from( )

1. 機能:

1-配列のようなオブジェクトを配列に変換できます;

2-走査可能に変換できますオブジェクトを配列に変換します (ES6 の新しいデータ構造 Set および Map を含む);

2. 実際のアプリケーション:

1-現在のブラウザーがこのメソッドをデプロイしていない場合、代わりに Array.prototype.slice メソッドを使用できます

/*
 *  方法名:objectToArray
 *  功能介绍:把类似数组的对象、可遍历的对象转换成数组
 *  参数:obj-需要转换的对象
 */
var objectToArray = function(obj){
   return Array.from ? Array.from(obj) : [].slice.call(obj);
};
ログイン後にコピー

2-パラメータが配列の場合、同一の配列が返されます

Array.from(["z","y","k"]);
//打印:["z","y","k"]
ログイン後にコピー

3-長さ属性のみを持つオブジェクトは渡すことができませんarray.from 変換

4-Array.from の 2 番目のパラメータ: は、各要素を処理し、処理された値を配列に入れるために使用されます。

let arrayLike = {
    "0" : "z",
    "1" : "y",
    "2" : "k",
    "length":3
};
Array.from(arrayLike,x=>x+'1');
//等同于
Array.from(arrayLike).map(x=>x+'1');

//打印:["z1","y1","k1"]
ログイン後にコピー

【関連する推奨事項: JavaScript 学習チュートリアル

以上がJavaScriptでオブジェクトを配列に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート