JSset轉數組

JSset是一種值的集合,它是唯一的,元素之間沒有順序關係。如果要將JSset轉換為數組,這裡提供了幾種方法。本文主要從以下幾個方面來詳細闡述JSset轉數組的實現。

一、從JSON轉數組

如果有一個JSON字元串,我們可以將其轉化為JSset,然後再將其轉換為數組。這裡提供一個示例:

let jsonStr = '{"name": "apple", "price": "2.99"}';
let jsonObj = JSON.parse(jsonStr);
let mySet = new Set(Object.values(jsonObj));
let myArray = Array.from(mySet);
console.log(myArray);//["apple", "2.99"]

以上代碼將JSON字元串轉換為對象,然後提取了對象的值來創建JSset,最後通過Array.from()方法將JSset轉換為數組。

二、JSON轉數組JS

在JavaScript中,我們也可以使用內置函數來直接將JSON轉換為數組。

let jsonStr = '{"name": "apple", "price": "2.99"}';
let myArray = JSON.parse(jsonStr, (key, value) => {
  return typeof value === 'string' ? parseInt(value) : value;
});
console.log(myArray);//{name: "apple", price: 2.99}

這裡使用了JSON.parse()內置函數,第二個參數是轉換器函數。該轉換器函數可以檢測JSON對象的每個值,並將其轉換為需要的格式。在這個示例中,我們將字元串轉換為數字。

三、對象轉數組

如果要從一個對象中創建一個數組,可以使用Object.values()將對象中的值提取出來,然後使用Array.from()將JSset轉換為數組:

let myObj = {name: "apple", price: "2.99"};
let mySet = new Set(Object.values(myObj));
let myArray = Array.from(mySet);
console.log(myArray);//["apple", "2.99"]

四、JS數組轉數字

JavaScript中的數組可以包含數字類型的元素,我們可以使用Array.from()將JSset轉換為數字類型的數組:

let mySet = new Set([1, 2, 3]);
let myArray = Array.from(mySet, (x) => x * x);
console.log(myArray);//[1, 4, 9]

這裡使用了Array.from()內置函數來創建新的數組。第二個參數是轉換器函數,將所有元素都乘以自己。

五、JSNumber轉數組

如果要將JS數字轉換為數組,可以使用String()函數將數字轉換為字元串類型,然後使用.split()將其轉換為數組類型:

let myNum = 123;
let myStr = String(myNum);
let myArray = myStr.split("");
console.log(myArray);//["1", "2", "3"]

六、String轉數組

如果有一個字元串,我們可以使用.split()函數將其轉換為數組:

let myStr = "apple";
let myArray = myStr.split("");
console.log(myArray);//["a", "p", "p", "l", "e"]

七、Vector轉數組

在C++編程中,Vector是一種動態數組。如果要將一個Vector轉換為數組,可以使用Vector的.data()方法將其轉換為指針,然後使用Array.from()將指針轉換為數組:

vector myVector = {1, 2, 3};
int* myArray = myVector.data();
console.log(Array.from(myArray));//[1, 2, 3]

八、Map轉數組

如果有一個Map,我們可以使用Map的.entries()方法來獲取一個迭代器對象,然後通過Array.from()將其轉換為數組:

let myMap = new Map([[1, 'a'], [2, 'b'], [3, 'c']]);
let myArray = Array.from(myMap.entries());
console.log(myArray);//[[1, "a"], [2, "b"], [3, "c"]]

九、JS數組轉樹

除了將JSset轉換為數組,還可以將JS數組轉換為樹。以下是一個使用遞歸方式將JS數組轉換為樹的示例:

let myArray = [
  { id: 1, name: "fruit", parent: null },
  { id: 2, name: "apple", parent: 1 },
  { id: 3, name: "grape", parent: 1 },
  { id: 4, name: "red apple", parent: 2 },
  { id: 5, name: "green apple", parent: 2 },
  { id: 6, name: "red grape", parent: 3 },
  { id: 7, name: "green grape", parent: 3 },
];

function buildTree(elements, parentId = null) {
  let result = [];
  elements.forEach((element) => {
    if (element.parent === parentId) {
      let children = buildTree(elements, element.id);
      if (children.length > 0) {
        element.children = children;
      }
      result.push(element);
    }
  });
  return result;
}

let myTree = buildTree(myArray);
console.log(JSON.stringify(myTree));//[{"id":1,"name":"fruit","parent":null,"children":[{"id":2,"name":"apple","parent":1,"children":[{"id":4,"name":"red apple","parent":2},{"id":5,"name":"green apple","parent":2}]},{"id":3,"name":"grape","parent":1,"children":[{"id":6,"name":"red grape","parent":3},{"id":7,"name":"green grape","parent":3}]}]}]

以上函數使用遞歸的方式生成樹結構。如果我們傳入的parentId是null,就意味著將該元素作為根節點,然後將其子節點逐個添加到子數組中,最終形成一個樹的結構。

結論

以上是JSset轉換為數組的幾種方法和JS數組轉換為樹結構的方法。這些方法可以根據具體場景進行選擇和應用,希望讀者們能夠在實際應用中得到幫助。

原創文章,作者:VEHV,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/134225.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
VEHV的頭像VEHV
上一篇 2024-10-04 00:04
下一篇 2024-10-04 00:04

相關推薦

  • MySQL字元串轉數組詳解

    一、MySQL字元串轉數組是什麼? MySQL字元串轉數組是把字元串類型的數據轉換為數組類型的數據。 在MySQL中,字元串類型的數據是非常常見的,但是有時需要將這些字元串類型的數…

    編程 2025-04-23
  • Vue對象轉數組:一個實用的JS技巧

    Vue是目前最受歡迎的JavaScript框架之一,它被廣泛應用於單頁面應用程序開發、數據綁定、組件化開發等場景。在Vue的開發中,我們經常需要將其數據對象轉換為數組,以便更方便地…

    編程 2025-04-22
  • 前端字元串轉數組詳解

    一、常用的字元串轉數組方法 1、使用split方法將字元串按照指定分隔符轉為數組 let str = “今天,天氣,真好”; let arr = str.split(“,”); /…

    編程 2025-04-22
  • ES6對象轉數組指南

    在Javascript編程過程中,經常需要進行數組和對象之間的轉換。ES6以及後續版本提供了許多便捷的方法幫助開發者實現這樣的轉換。本文將圍繞ES6對象轉數組展開講解,介紹常用的方…

    編程 2025-04-13
  • go字元串轉數組詳解

    一、什麼是字元串 字元串是計算機編程中的一種數據類型,它表示一段字元序列,可以包含字母、數字、標點符號以及其他特殊字元。在Go中,字元串類型被定義為一個不可變的序列,即字元串中的每…

    編程 2025-04-13
  • JQ字元串轉數組詳解

    一、字元串轉數組 將字元串轉換成數組是開發過程中常用的操作之一。通過Jquery將字元串轉換成數組十分簡單,我們只需要使用原始的JavaScript split()函數,然後使用$…

    編程 2025-02-24
  • PostgreSQL字元串轉數字詳解

    PostgreSQL是一款功能強大的關係型資料庫,其內置了許多函數用於數據類型轉換。其中常用的就是將字元串類型轉換為數字類型。在這篇文章中,我們將從多個方面詳細介紹如何使用Post…

    編程 2025-02-05
  • Javajson轉數組深入剖析

    一、API介紹 Javajson轉數組是一個非常強大的API,它可以將JSON格式的字元串轉換成Java數組。它的主要作用是在Java項目中處理JSON數據,這在互聯網項目中使用得…

    編程 2025-02-01
  • JAVAlist,javalist轉數組

    本文目錄一覽: 1、Java的List如何實現線程安全? 2、java中list後面加是什麼意思? 3、java list集合什麼意思 Java的List如何實現線程安全? Jav…

    編程 2025-01-20
  • Matlab Cell 轉數字的方法與思路

    一、Matlab Cell 數據類型介紹 Matlab 中,Cell 是一種非常常用的數據類型,它可以用來存儲任意類型的數據,相較於其他類型的數組更加靈活。在一些需要存儲不同數據類…

    編程 2025-01-11

發表回復

登錄後才能評論