#yyds干货盘点# 前端歌谣的刷题之路-第一百一十五题-根据包名 在指定空间中创建对象

时间:2022-10-13 18:11:39


 前言

我是歌谣 我有个兄弟 巅峰的时候排名c站总榜19 叫前端小歌谣 曾经我花了三年的时间创作了他 现在我要用五年的时间超越他 今天又是接近兄弟的一天人生难免坎坷 大不了从头再来 歌谣的意志是永恒的 放弃很容易 但是坚持一定很酷 本题目源自于牛客网 微信公众号前端小歌谣

题目

根据包名,在指定空间中创建对象

输入描述:

namespace({a: {test: 1, b: 2}}, 'a.b.c.d')

输出描述:

{a: {test: 1, b: {c: {d: {}}}}}

#yyds干货盘点# 前端歌谣的刷题之路-第一百一十五题-根据包名 在指定空间中创建对象

#yyds干货盘点# 前端歌谣的刷题之路-第一百一十五题-根据包名 在指定空间中创建对象

​编辑

 核心代码

<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>创建对象</title>
</head>

<body>
<script>function namespace(oNamespace, sPackage) {
const arr = sPackage.split('.');
let o = oNamespace;
for (let i = 0; i < arr.length; i++) {
// 如果不是对象,则使它成为对象
if (typeof o[arr[i]] != 'object') {
o[arr[i]] = {};
}
o = o[arr[i]];
}
return</script>
</body>

</html>

#yyds干货盘点# 前端歌谣的刷题之路-第一百一十五题-根据包名 在指定空间中创建对象