国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 語(yǔ)言 > JavaScript > 正文

Javascript 去除數(shù)組的重復(fù)元素

2024-05-06 14:10:11
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
我打開(kāi)firebug的console,花了30秒想,30秒寫(xiě),結(jié)果如下:(x為目標(biāo)數(shù)組,y是去除重復(fù)元素后的結(jié)果)
代碼如下:
var x=[1,1,3,4,5,3];
var y=[];
var tArray=function(i,arr){
var yap=false;
for(var j=0;j<arr.length;j++){
if(arr[j]==i){yap=true;break;};
}
if(!yap) arr.push(i);
};
for(var t=0;t<x.length;t++){
tArray(x[t],y);
}
alert(y.length);
alert(y.toString());

答案不是唯一的,而且沒(méi)有標(biāo)準(zhǔn)答案,所以上面的代碼是對(duì)的也是錯(cuò)的。如果數(shù)組是一個(gè)復(fù)雜對(duì)象數(shù)組呢?如果數(shù)組中包含多個(gè)空對(duì)象{}呢?要知道js里面有很多特殊甚至是bug的現(xiàn)象,alert({}=={})看看怎么回事...

注:如果誰(shuí)有標(biāo)準(zhǔn)答案歡迎評(píng)論里面發(fā)下讓大家學(xué)習(xí)學(xué)習(xí)。

出題者本身就不會(huì)考慮到這些問(wèn)題。

不要去學(xué)習(xí)做題,在實(shí)際工作中遇到問(wèn)題時(shí)高效解決問(wèn)題的能力才是真正有價(jià)值的。

需要注意的地方補(bǔ)充:

有個(gè)問(wèn)題應(yīng)該注意下
arr[j]==i 您這里貌似 是指當(dāng)數(shù)組元素 為number類(lèi)型時(shí)的相等性判斷...
但是往往我們可能要對(duì)不同類(lèi)型做 相等性判斷... 這個(gè)是實(shí)際應(yīng)用時(shí)應(yīng)該考慮的問(wèn)題

1!=new Number(1)的情況
null==undefined 的情況

0=="0" 的情況 等等

所以 顯然 簡(jiǎn)單的== 和===都是不合適的.
應(yīng)該獨(dú)立實(shí)現(xiàn)一個(gè) equals 方法 做相等性判斷... 要根據(jù)需求 設(shè)置規(guī)則

我舉的例子正是針對(duì)number類(lèi)型的數(shù)組的,目的是對(duì)“面試啥做題”表達(dá)一種態(tài)度。實(shí)際應(yīng)用中應(yīng)該根據(jù)實(shí)際需求去考慮。除非實(shí)際工作中要求或者我是個(gè)js學(xué)術(shù)研究者,否則我是不會(huì)獨(dú)立去實(shí)現(xiàn)一個(gè)equals方法的。國(guó)外的開(kāi)發(fā)員往往遵循一個(gè)信條:“Do The Simplest Thing That Could Possibly Work”,意思大概即“不要過(guò)度設(shè)計(jì),適用至上”,我這幾年的工作經(jīng)驗(yàn)也常常印證著這個(gè)道理。不知道你怎么看。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 固阳县| 嘉兴市| 通河县| 铁岭市| 罗山县| 定安县| 呼伦贝尔市| 宁城县| 商南县| 通州市| 甘谷县| 类乌齐县| 林芝县| 三台县| 隆尧县| 报价| 石渠县| 湘阴县| 依兰县| 巩留县| 桂林市| 抚顺市| 晋宁县| 铜鼓县| 项城市| 稻城县| 华阴市| 鸡泽县| 海阳市| 石泉县| 浮山县| 开化县| 安仁县| 容城县| 石楼县| 尼木县| 清水河县| 内黄县| 陆良县| 宜川县| 民和|