js 树形结构转数组
时间: 2023-11-15 17:59:28 浏览: 41
JS中的树形结构转数组是指将一个树形结构的数据转换成一个数组的形式。这个过程可以通过递归实现。下面是一个实现树形结构转数组的函数:
```
function treeToArr(data) {
const result = [];
data.forEach(item => {
const loop = data => {
result.push({
id: data.id,
name: data.name,
parentId: data.parentId
});
let child = data.children;
if (child) {
for (let i = 0; i < child.length; i++) {
loop(child[i]);
}
}
};
loop(item);
});
return result;
}
```
这个函数接收一个树形结构的数据作为参数,返回一个数组。函数中使用了forEach循环遍历每一个节点,然后使用递归的方式将每个节点及其子节点转换成一个对象,并将这个对象放入结果数组中。最后返回结果数组。
相关问题
C#结构转数组
你可以使用结构体的数组来存储多个结构体对象。以下是将一个结构体数组转换为普通数组的示例代码:
```csharp
struct MyStruct
{
public int value;
}
MyStruct[] myStructArray = new MyStruct[5];
// 将结构体数组转换为整数数组
int[] intArray = myStructArray.Select(s => s.value).ToArray();
```
在上面的示例中,我们定义了一个名为 `MyStruct` 的结构体,其中包含一个名为 `value` 的整数字段。然后,我们创建了一个包含 5 个 `MyStruct` 对象的结构体数组 `myStructArray`。最后,我们使用 LINQ 将 `myStructArray` 转换为一个整数数组 `intArray`,其中每个元素都是对应结构体对象的 `value` 字段的值。
js 数组字符串转数组
JavaScript中可以通过split()方法将字符串转换为数组。split()方法接收一个参数,用来指定分隔符,将字符串根据分隔符进行分割并返回一个数组。
示例代码如下:
```
let str = "apple,banana,orange";
let arr = str.split(",");
console.log(arr); // 输出 ["apple", "banana", "orange"]
```
另外,如果需要将一个字符串按照某种规则转换为数组,也可以使用正则表达式。例如,下面的代码将一个以逗号和空格分隔的字符串转换为数组:
```
let str = "apple, banana, orange";
let arr = str.split(/,\s*/);
console.log(arr); // 输出 ["apple", "banana", "orange"]
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)