如何去掉数组的重复元素?

BOB_JACK 2010-04-22 06:54:26
使用JavaScript编写一个方法,去掉一个数组的重复元素并输出?
...全文
145 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
llyy112233 2010-04-22
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 danica7773 的回复:]
JScript code

function delSameItem(arr) {
var _temp = {};
var _arrTemp = [];
var _len = arr.length;
for(var i = 0; i < _len; i++) {
if(!_temp[arr[i]]) {
_ar……
[/Quote]

学习。。。。。
tomte_1984 2010-04-22
  • 打赏
  • 举报
回复
2、3楼正解,我完善下
<script>
var arr = [1, 2, 3, 4, 5, 2, 3];
function p(arr1){
var ret = [];
var o = {};
for(var i=0; i<arr.length; ++i){
if(!o[arr[i]]){
ret.push(arr[i]);
o[arr[i]] = arr[i];
}
}
arr=ret.concat();
}
document.write(arr+"<br>");
p(arr);
document.write(arr+"<br>");
</script>
sohighthesky 2010-04-22
  • 打赏
  • 举报
回复
if(!_temp[arr[i]]) {   ==>if(typeof(temp[arr[i]])==="undfined"//否则0始终为移除

ret.push(arr[i]); ==>ret[ret.length]=arr[i];//效率更高
ahopedog 2010-04-22
  • 打赏
  • 举报
回复

var arr = [1, 5, 7, 5, 9];

function p(arr){
var ret = [];
var o = {};
for(var i=0, len=arr.length; i<len; ++i){
if(!o[arr[i]]){
ret.push(arr[i]);
o[arr[i]] = arr[i];
}
}
return ret;
}
打字员 2010-04-22
  • 打赏
  • 举报
回复

function delSameItem(arr) {
var _temp = {};
var _arrTemp = [];
var _len = arr.length;
for(var i = 0; i < _len; i++) {
if(!_temp[arr[i]]) {
_arrTemp.push(arr[i]);
_temp[arr[i]] = 1;
}
}
return _arrTemp;
}

87,909

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧