永发信息网

js Object 数组?

答案:2  悬赏:0  手机版
解决时间 2021-03-19 12:20
var student = new Object();
student.name = "Lanny";
student.age = "25";
student.location = "China";

可以定义一个student,如果多个student呢?成员不变,如何定义和引用?
最佳答案
function Student(name,age,location){
  this.name = name;
  this.age = age;
  this.location = location;
}
var s1 = new Student('Lanny','25','China');
全部回答
js 数组去重<br>注:应该也可以适用于 object数组,但是本人没有进行验证,贴出来仅供你参考第一种是比较常规的方法<br><br>思路:<br><br>1.构建一个新的数组存放结果<br><br>2.for循环中每次从原数组中取出一个元素,用这个元素循环与结果数组对比<br><br>3.若结果数组中没有该元素,则存到结果数组中<br>代码如下:<br><br>array.prototype.unique1 = function(){<br> var res = [this[0]];<br> for(var i = 1; i < this.length; i++){<br>  var repeat = false;<br>  for(var j = 0; j < res.length; j++){<br>   if(this[i] == res[j]){<br>    repeat = true;<br>    break;<br>   }<br>  }<br>  if(!repeat){<br>   res.push(this[i]);<br>  }<br> }<br> return res;<br>}<br>var arr = [1, 'a', 'a', 'b', 'd', 'e', 'e', 1, 0]<br>alert(arr.unique1());第二种方法比上面的方法效率要高<br><br>思路:<br><br>1.先将原数组进行排序<br><br>2.检查原数组中的第i个元素 与 结果数组中的最后一个元素是否相同,因为已经排序,所以重复元素会在相邻位置<br><br>3.如果不相同,则将该元素存入结果数组中<br>代码如下:<br><br>array.prototype.unique2 = function(){<br> this.sort(); //先排序<br> var res = [this[0]];<br> for(var i = 1; i < this.length; i++){<br>  if(this[i] !== res[res.length - 1]){<br>   res.push(this[i]);<br>  }<br> }<br> return res;<br>}<br>var arr = [1, 'a', 'a', 'b', 'd', 'e', 'e', 1, 0]<br>alert(arr.unique2());<br><br>二种方法也会有一定的局限性,因为在去重前进行了排序,所以最后返回的去重结果也是排序后的。如果要求不改变数组的顺序去重,那这种方法便不可取了。<br><br>第三种方法(推荐使用)<br><br>思路:<br><br>1.创建一个新的数组存放结果<br><br>2.创建一个空对象<br><br>3.for循环时,每次取出一个元素与对象进行对比,如果这个元素不重复,则把它存放到结果数组中,同时把这个元素的内容作为对象的一个属性,并赋值为1,存入到第2步建立的对象中。<br><br>说明:至于如何对比,就是每次从原数组中取出一个元素,然后到对象中去访问这个属性,如果能访问到值,则说明重复。<br>代码如下:<br><br>array.prototype.unique3 = function(){<br> var res = [];<br> var json = {};<br> for(var i = 0; i < this.length; i++){<br>  if(!json[this[i]]){<br>   res.push(this[i]);<br>   json[this[i]] = 1;<br>  }<br> }<br> return res;<br>}<br>var arr = [112,112,34,'你好',112,112,34,'你好','str','str1'];<br>alert(arr.unique3());
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
我的婚姻家庭被一个弟三者破坏了离婚了我老婆
2014年8月2日湖南卫视下午五点播放的什么电视
礼彬蛋糕房超市在哪里啊,我有事要去这个地方
头大,脸大的人适合什么发型,男生!!
我妈妈身上起了一小片一小片的红疙瘩 又痒又
原动力发型工作室地址有知道的么?有点事想过
容易长痘痘怎么办
<<致命魔术>>原著小说的下载
无所顾忌的意思是什么?
施工企业行为资料含义,包含内容?谢谢。
拳皇系列是哪年出品的最早是哪一代?
汽轮机TSI系统包括什么?
东明县人民医院-医疗保险特种慢性疾病定点门
小米note能不能查内存卡
有没有打字的时候出的是简体字 打出来之后是
推荐资讯
注射用白眉蛇毒血凝酶怎么用,注意事项
西班牙马德里与阿利坎特离的远吗
济南市槐荫区玉周景园小区房子有没有升值空间
来电管家怎么设置
互相的英文单词怎么写
用混凝土制作音响箱体,我的十寸喇叭,280w功
新疆旭开瑞投资有限公司地址在哪,我要去那里
2017年现有100万存款怎么办
女主叫夏甜心男主叫宫莫迟,求书名
企业邮箱密码如何修改?
芒糯上寨在什么地方啊,我要过去处理事情
双人徐是什么意思
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?