一、map方法
[javascript] view plain copy
functionfuzzyPlural(single){
varresult=single.replace(/o/g,e);
//replace也不会修改原来数组的值,这里打印[foot,goose,moose,kangaroo]
//alert(single);
//下面为新的数组添加了一个元素,但是我们看到在map的时候没有对添加的元素进行处理,所以map调用的结果还是没有变化:["feet","geese","meese","kangareese"]
//但是可以知道words结果已经变化了!
//words[4]="metoo";
//虽然下面通过修改length为3将数组截断了,从而相当于删除了第四个元素,但是map方法并不会检测到这种变化,所以在map方法调用的结果数组长度还是为4,只是最后一个元素变成了空了!但是这种删除会影响外层的words,使得他的长度变成了3!
//但是在具体的fuzzyPlural只会调用三次!(通过alert(single)就可以知道,因为这里已经把数组截断了,但是返回的数组长度还是4,一个为空!)
words.length=3;
if(single===kangaroo){
result+=se;
}
returnresult;
}
varwords=["foot","goose&
如果觉得《js map遍历 修改对象里面的值_js中那些方法不改变原来的数组对象》对你有帮助,请点赞、收藏,并留下你的观点哦!