此编码中有两个错误,在第3行和第9行。我确定这是一个简单的错误,但我似乎无法找到它的错误。
HTML CODE
<h1 id="title">Enter the String</h1>
<input type="text" id="myTextField"/>
<input type="submit" id="byBtn" value="Change" onclick="change()"/>
JAVASCRIPT CODE
function change(){
var str = document.getElementById('myTextField').value;
if( str.length==0 ){
alert('Write Some real Text please.');
return;
}
var arr = str.split();
var map = {};
for (int i= 0; i < arr.length; i++){
if(map[arr[i]] == true){
map[arr[i]] = map[arr[i]] || [];
map[arr[i]].push(i+1);
}
else{
map[arr[i]] = [];
map[arr[i]].push(i+1);
}
}
alert(map);
}
答案 0 :(得分:0)
我不确定该功能的目标是什么,但是当您重新组织代码以便您不引用未定义的变量时,一切都会通过:
function change() {
var str = document.getElementById('myTextField').value;
if( str.length==0 ){
alert('Write Some real Text please.');
}
var arr = str.split(' ');
var map = {}
for (var i = 0; i < arr.length; i++) {
if(map[arr[i]] == undefined) {
map[arr[i]] = [i]
}
else{
map[arr[i]].push(i)
}
}
alert(JSON.stringify(map));
}
http://codepen.io/anon/pen/WQwxbV
根据你发给我的东西,它应该是什么样的......