如图:有一个字符串 str,和一个空对象obj,把他变成如下格式。
我的错误解法:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<input type="" name="">
<button>ok</button>
<div></div>
<script type="text/javascript">
//q1
(function() {
var ipt = document.getElementsByTagName('input')[0],
btn = document.getElementsByTagName('button')[0],
div = document.getElementsByTagName('div')[0],
obj = {};
document.addEventListener('keyup', function(e) {
if (e.keyCode === 13) {
btn.click();
}
});
btn.addEventListener('click', function(e) {
obj = {};
var v = ipt.value;
if (v === "") {
div.innerHTML = ('no input!');
} else {
var arr = v.split(/[, _]/);
console.log(arr);
for (var i = 0; i < arr.length; i++) {
obj[arr[i]] = {};
}
div.innerHTML = ('obj = ' + JSON.stringify(obj));
}
});
}());
//q2
</script>
</body>
</html>
得出的结果不是嵌套的,求高手解惑。
你的写法是显然不对的,参考我的改动(一共改动四行),算是一种方案。