导航:首页 > 使用方法 > jsobject的常用方法

jsobject的常用方法

发布时间:2023-01-02 19:52:41

⑴ js object数组去重

js 数组去重

注:应该也可以适用于object数组,但是本人没有进行验证,贴出来仅供你参考

第一种是比较常规的方法

思路:

1.构建一个新的数组存放结果

2.for循环中每次从原数组中取出一个元素,用这个元素循环与结果数组对比

3.若结果数组中没有该元素,则存到结果数组中
代码如下:

Array.prototype.unique1=function(){
varres=[this[0]];
for(vari=1;i<this.length;i++){
varrepeat=false;
for(varj=0;j<res.length;j++){
if(this[i]==res[j]){
repeat=true;
break;
}
}
if(!repeat){
res.push(this[i]);
}
}
returnres;
}
vararr=[1,'a','a','b','d','e','e',1,0]
alert(arr.unique1());

第二种方法比上面的方法效率要高

思路:

1.先将原数组进行排序

2.检查原数组中的第i个元素 与 结果数组中的最后一个元素是否相同,因为已经排序,所以重复元素会在相邻位置

3.如果不相同,则将该元素存入结果数组中
代码如下:

Array.prototype.unique2=function(){
this.sort();//先排序
varres=[this[0]];
for(vari=1;i<this.length;i++){
if(this[i]!==res[res.length-1]){
res.push(this[i]);
}
}
returnres;
}
vararr=[1,'a','a','b','d','e','e',1,0]
alert(arr.unique2());



二种方法也会有一定的局限性,因为在去重前进行了排序,所以最后返回的去重结果也是排序后的。如果要求不改变数组的顺序去重,那这种方法便不可取了。

第三种方法(推荐使用)

思路:

1.创建一个新的数组存放结果

2.创建一个空对象

3.for循环时,每次取出一个元素与对象进行对比,如果这个元素不重复,则把它存放到结果数组中,同时把这个元素的内容作为对象的一个属性,并赋值为1,存入到第2步建立的对象中。

说明:至于如何对比,就是每次从原数组中取出一个元素,然后到对象中去访问这个属性,如果能访问到值,则说明重复。
代码如下:

Array.prototype.unique3=function(){
varres=[];
varjson={};
for(vari=0;i<this.length;i++){
if(!json[this[i]]){
res.push(this[i]);
json[this[i]]=1;
}
}
returnres;
}
vararr=[112,112,34,'你好',112,112,34,'你好','str','str1'];
alert(arr.unique3());

⑵ JS对象创建常用方式有哪些

1.对象字面量创建对象
var obj = { a:1,b:2 };
注意:对象字面量是一个表达式,这种表达式每次运算都会创建并初始化一个新对象,并计算这个新对象的每个属性值。所以如果在循环体内使用对象字面量,每次循环时都会创建新对象。
2.通过new运算符创建对象
var obj = new Object(); //创建空对象 var ary = new Array(); //创建空的数组对象
注意:new运算符后面跟的是一个函数调用,这个函数被称为构造函数。js中原始类型都包含内置的构造函数,也可以自己定义构造函数。
3.通过立即执行函数创建对象
var obj = (function(){ return {x:1,y:2};}());
注意:在立即执行函数内部一定要有return语句,return出的内容就是待创建的对象。
4.通过Object.create()创建对象
var obj = Object.create({x:1,y:2});
注意:Object.create()是一个静态函数,传入原型对象就可以创建继承此原型对象的对象,例如上面的例子中obj对象继承了x,y属性。

阅读全文

与jsobject的常用方法相关的资料

热点内容
外国肌肉锻炼方法 浏览:317
水池池底施工常用方法 浏览:79
简述液压管路的安装方法 浏览:860
寻找故事属于什么研究方法 浏览:629
长气球简单编织方法 浏览:800
元宝枫的功效与作用及食用方法 浏览:847
人奶做面膜的正确方法 浏览:659
球的面积的计算方法 浏览:800
金沙草食用方法 浏览:856
儿童毛巾的正确方法视频 浏览:550
估算有哪些方法 浏览:275
电线杆电路板安装方法 浏览:758
如何用最简单的方法弹飞扑克牌 浏览:878
制作花形馒头的方法与步骤视频 浏览:203
失业率计算方法 浏览:793
台式电脑纸盒制作方法 浏览:2
自己英语默写的正确方法 浏览:351
预防癌症最佳工作方法 浏览:21
嘴唇上长了个黑痣什么方法最安全 浏览:6
抖音号被拉黑有什么解决方法吗 浏览:485