diff --git a/pic/pic1.jpg b/pic/pic1.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..48b56507708523d1e908acd9de62cd809102ade6
Binary files /dev/null and b/pic/pic1.jpg differ
diff --git a/pic/pic2.jpg b/pic/pic2.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..72d794afd1f4898fee9ace0f38a8d2b3f945eae7
Binary files /dev/null and b/pic/pic2.jpg differ
diff --git a/pic/pic3.jpg b/pic/pic3.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..7ed031fb2d0a36af8389a7f4980a3580b9810d3b
Binary files /dev/null and b/pic/pic3.jpg differ
diff --git a/qinhao.html b/qinhao.html
new file mode 100644
index 0000000000000000000000000000000000000000..ddc34b4eb9bc86877ffab9c48d66b6ece18d9549
--- /dev/null
+++ b/qinhao.html
@@ -0,0 +1,196 @@
+
+
+
+
+
+ Document
+
+
+
+
+
+
+
+
+
+
+
+
+
+
<
+
>
+
+
+
+
+
diff --git a/qinhao.js b/qinhao.js
new file mode 100644
index 0000000000000000000000000000000000000000..7d454b13d3d27ecd22ca6eb3d0fd496a64e2dbf9
--- /dev/null
+++ b/qinhao.js
@@ -0,0 +1,181 @@
+const cityData = [
+ {
+ parentValue: 1,
+ value: 11,
+ label: "北京市",
+ },
+ {
+ parentValue: 11,
+ value: 111,
+ label: "东城区",
+ },
+ {
+ parentValue: 11,
+ value: 112,
+ label: "西城区",
+ },
+ {
+ parentValue: 1,
+ value: 12,
+ label: "上海市",
+ },
+ {
+ parentValue: 12,
+ value: 121,
+ label: "黄浦区",
+ },
+ {
+ parentValue: 12,
+ value: 122,
+ label: "徐汇区",
+ },
+ {
+ parentValue: 1,
+ value: 13,
+ label: "广东省",
+ },
+ {
+ parentValue: 13,
+ value: 131,
+ label: "广州市",
+ },
+ {
+ parentValue: 131,
+ value: 1311,
+ label: "天河区",
+ },
+ {
+ parentValue: 131,
+ value: 1312,
+ label: "越秀区",
+ },
+ {
+ parentValue: 132,
+ value: 1321,
+ label: "南山区",
+ },
+ {
+ parentValue: 132,
+ value: 1322,
+ label: "罗湖区",
+ },
+ {
+ value: 1,
+ label: "中国",
+ },
+ {
+ parentValue: 13,
+ value: 132,
+ label: "深圳市",
+ },
+];
+
+/* *
+ 1.请利用递归方法实现一个函数,把上方数据递归成有层级的数据,
+ 2.把value字段变成id字段,label字段变成title字段,children字段变成child字段,
+ 3.去掉parentValue字段,最终得到以下数据。需要一模一样的数据
+ ⚠️注意:不允许使用三层循环,请使用递归方法
+ [
+ {
+ id: 1,
+ title: '中国',
+ child: [
+ {
+ id: 11,
+ title: '北京市',
+ child: [
+ {
+ id: 111,
+ title: '东城区'
+ },
+ {
+ id: 112,
+ title: '西城区'
+ }
+ ]
+ },
+ {
+ id: 12,
+ title: '上海市',
+ child: [
+ {
+ id: 121,
+ title: '黄浦区'
+ },
+ {
+ id: 122,
+ title: '徐汇区'
+ }
+ ]
+ },
+ {
+ id: 13,
+ title: '广东省',
+ child: [
+ {
+ id: 131,
+ title: '广州市',
+ child: [
+ {
+ id: 1311,
+ title: '天河区'
+ },
+ {
+ id: 1312,
+ title: '越秀区'
+ }
+ ]
+ },
+ {
+ id: 132,
+ title: '深圳市',
+ child: [
+ {
+ id: 1321,
+ title: '南山区'
+ },
+ {
+ id: 1322,
+ title: '罗湖区'
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+]
+ * */
+
+// 具体实现
+const getArea = (data) => {
+ // 在这里编写代码
+ const Recursion = (parentId) => {
+ const Nodes = null;
+ if (parentId === null) {
+ Nodes = data.filter((item) => !item.parentValue);
+ } else {
+ Nodes = data.filter(item.parentValue === parentId);
+ }
+
+ return Nodes.map((node) => {
+ const nextNodes = {
+ id: node.value,
+ title: node.label,
+ };
+
+ const childeNodes = Recursion(node.value);
+ if (childeNodes.length > 0) {
+ nextNodes.child = childeNodes;
+ }
+
+ return nextNodes;
+ });
+ };
+
+ const resData = Recursion(null);
+ result.push(...resData);
+};
+const result = [];
+getArea(cityData);
+console.log(result);