国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

js判斷一個數(shù)組中是否有重復(fù)的數(shù)組/ 一個數(shù)組中對象的某個屬性值是否重復(fù)

這篇具有很好參考價值的文章主要介紹了js判斷一個數(shù)組中是否有重復(fù)的數(shù)組/ 一個數(shù)組中對象的某個屬性值是否重復(fù)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

項目中往往會遇到對數(shù)組處理是否存在某個形同的值?;蛘邔ο笾惺欠翊嬖谛瓮亍?br> 下列方法常用,但不限于。

一、普通數(shù)組數(shù)據(jù)
1.1對數(shù)組進(jìn)行排序,對比上一個元素和下一個元素是否相等,若相等,則說明數(shù)組有重復(fù)值。

const arr=['111','222','333','444','555'];
//判斷數(shù)組元素是否有重復(fù)
var sarr = arr.sort();
for(let i=0; i<sarr.length; i++){
    if(sarr[i] == sarr[i+1]){
        alert("數(shù)組中重復(fù)元素是:" + sarr[i])
    }
}

js判斷數(shù)組對象是否有重復(fù)數(shù)據(jù),javascript,前端,開發(fā)語言
1.2:先將數(shù)組轉(zhuǎn)換成字符串,再遍歷數(shù)組,在字符串中移除當(dāng)前的數(shù)組元素之后還能找到該元素,則說明數(shù)組有重復(fù)值。

	const arr=['111','111','333','444','555'];
	var str = arr.join(",") + ",";
	for(let i=0; i<arr.length; i++){
	    if(str.replace(arr[i]+",", "").indexOf(arr[i]+",") > -1){
	        alert("數(shù)組中重復(fù)元素是:" + arr[i]);
	        break
	    }
	}

js判斷數(shù)組對象是否有重復(fù)數(shù)據(jù),javascript,前端,開發(fā)語言
1.3先利用ES6語法將數(shù)組去重,之后再與原數(shù)組比較長度,若長度小于原數(shù)組,則說明數(shù)組有重復(fù)值。
Array.from(new Set(arr)).length < arr.length

//ES6去重方法
// 1. 拓展運(yùn)算符 + new Set方法

const arr=['111','222','333','444','555'];
let arr1 = [...new Set(arr)]
if(arr2.length < arr.length) {
	console.log('有重復(fù)')
}else{
	console.log('沒有重復(fù)')
}

js判斷數(shù)組對象是否有重復(fù)數(shù)據(jù),javascript,前端,開發(fā)語言

	// 2. Array.from + new Set方法
	const arr=['111','111','333','444','555'];
	let arr2 = Array.from(new Set(arr))
	if(arr2.length < arr.length) {
		console.log('有重復(fù)')
	}else{
		console.log('沒有重復(fù)')
	}

js判斷數(shù)組對象是否有重復(fù)數(shù)據(jù),javascript,前端,開發(fā)語言

二、對象元素數(shù)組
需求:要判斷下方這個數(shù)組中,name/age是否有重復(fù)的數(shù)據(jù).

2.1,先利用ES6語法Set將數(shù)組去重,之后再原數(shù)組比較長度,若長度小于原數(shù)組,則說明數(shù)組有重復(fù)值

	const arr=[
	  {name:"張三3",age:12},
	  {name:"張三2",age:12},
	  {name:"張三",age:12},
	  {name:"張三1",age:12}
	];
	const newListLength=new Set(arr.map(item=>item.name)).size;
	const listLength=arr.length;
	if(listLength>newListLength){
	  console.log("重復(fù)");
	}

js判斷數(shù)組對象是否有重復(fù)數(shù)據(jù),javascript,前端,開發(fā)語言

2.2,先將數(shù)組轉(zhuǎn)換成字符串,再遍歷數(shù)組,在字符串中移除當(dāng)前的數(shù)組元素之后還能找到該元素,則說明數(shù)組有重復(fù)值。

const arr=[
  {name:"張三3",age:12},
  {name:"張三2",age:12},
  {name:"張三",age:12},
  {name:"張三1",age:12}
];
/*
  replace不用正則的話,只會替換掉第一個符合條件的數(shù)據(jù)
  之所以加逗號,是因為這樣可以確保數(shù)據(jù)的唯一性,如果不加逗號,會導(dǎo)致數(shù)據(jù)不對,比如說第三條數(shù)據(jù)"張三",replace之后還會查到第四條數(shù)據(jù)中的"張三",所以得加上逗號確保唯一性
*/
const newArr=arr.map(item=>item.name);
const str=newArr.join(",")+",";
const flag=newArr.some(item=>{
  return str.replace(item+",","").indexOf(item+",")>-1
});
if(flag){
  console.log("重復(fù)");
}

js判斷數(shù)組對象是否有重復(fù)數(shù)據(jù),javascript,前端,開發(fā)語言
2.3,利用findIndex或者indexOf查到的下標(biāo)和當(dāng)前循環(huán)的下標(biāo)對比是否相等

	//indexOf查找是否有重復(fù)的
	const arr=[
	  {name:"張三3",age:12},
	  {name:"張三2",age:12},
	  {name:"張三",age:12},
	  {name:"張三1",age:12}
	];
	const newArr=arr.map(item=>item.name);
	const isRepeat=newArr.some((item,index,arr)=>arr.indexOf(item)!=index);
	if(isRepeat){
	  console.log("重復(fù)");
	}

js判斷數(shù)組對象是否有重復(fù)數(shù)據(jù),javascript,前端,開發(fā)語言

	//findIndex查找是否有重復(fù)的
	const arr=[
	  {name:"張三3",age:12},
	  {name:"張三2",age:12},
	  {name:"張三",age:12},
	  {name:"張三1",age:12}
	];
	const newArr=arr.map(item=>item.name);
	const isRepeat=newArr.some((x,index,arr)=>arr.findIndex(y=>y==x)!=index);
	if(isRepeat){
	  console.log("重復(fù)");
	}

js判斷數(shù)組對象是否有重復(fù)數(shù)據(jù),javascript,前端,開發(fā)語言文章來源地址http://www.zghlxwxcb.cn/news/detail-702193.html

到了這里,關(guān)于js判斷一個數(shù)組中是否有重復(fù)的數(shù)組/ 一個數(shù)組中對象的某個屬性值是否重復(fù)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • JS中判斷某個字符串、數(shù)組等是否包含某個值

    方法一: indexOf()?? (推薦) ? indexOf() 方法可返回某個指定的字符串值在字符串中首次出現(xiàn)的位置。如果要檢索的字符串值沒有出現(xiàn),則該方法返回 -1。 方法二:match() ? match() 方法可在字符串內(nèi)檢索指定的值,或找到一個或多個正則表達(dá)式的匹配。 方法三: search() ? search() 方法

    2024年02月03日
    瀏覽(103)
  • JavaScript判斷數(shù)組對象是否含有某個值的方法(6種)

    JavaScript判斷數(shù)組對象是否含有某個值的方法(6種)

    文章內(nèi)容 文章鏈接 vue3 antd table表格的增刪改查(一) input輸入框根據(jù)搜索【后臺管理系統(tǒng)純前端filter過濾】 https://blog.csdn.net/XSL_HR/article/details/128072584?spm=1001.2014.3001.5501 vue3 antd table表格的增刪改查(二) input輸入框根據(jù)搜索【后臺管理系統(tǒng) 請求后端接口 前后端

    2024年02月06日
    瀏覽(29)
  • 前端算法題——給定一個整數(shù)數(shù)組,判斷是否存在重復(fù)元素。

    題目可以理解為如果存在一值在數(shù)組中出現(xiàn)至少兩次,函數(shù)返回 true 。如果數(shù)組中每個元素都不相同,則返回 false。 這題一看就是 計數(shù)問題,題目中“如果存在一值在數(shù)組中出現(xiàn)至少兩次”這句話就告訴我們記錄每一個數(shù)字出現(xiàn)的次數(shù)就能解決問題了。? 我們遍歷數(shù)組時,

    2024年02月20日
    瀏覽(95)
  • Js:獲取數(shù)組對象重復(fù)屬性值和數(shù)組對象去重

    對象數(shù)組去重分為兩類:根據(jù)某一屬性去重,和去重完全相同對象(屬性屬性值都相同) 一.數(shù)組嵌套對象,根據(jù)對象某一屬性去重 二、數(shù)組嵌套對象,去重完全相同對象(屬性屬性值都相同) 整理如下: 首先、循環(huán)數(shù)組,拿到對象的所有屬性組成的數(shù)組; 其次、循環(huán)屬性

    2024年01月21日
    瀏覽(30)
  • 前端基礎(chǔ)面試題:如何判斷對象是否具有某屬性?遍歷數(shù)組的方法有哪些?

    前端基礎(chǔ)面試題:如何判斷對象是否具有某屬性?遍歷數(shù)組的方法有哪些?

    一、如何判斷對象具有某屬性? 如: let obj={name:\\\'zhangsan\\\',age:21} 有以下方法 ( property 為屬性名的變量,實際上是key,鍵名): 1. property in obj 效果如圖: in 運(yùn)算符 2. Reflect.has(obj, property) 效果如圖: 關(guān)于 Reflect: ① 它是JS的一個內(nèi)置對象,無構(gòu)造函數(shù),可以用它遍歷對象的key,如

    2023年04月08日
    瀏覽(98)
  • 利用java語言中的stream流操作判斷一個數(shù)組中是否有重復(fù)元素

    判斷數(shù)組中是否有重復(fù)元素可以說是每一個編程語言初學(xué)者都會遇到的題目,常見的各種搜索算法本文不做贅述了,我們這次介紹的是利用java語言中特有的stream流操作來判斷通用類型數(shù)組是否包含重復(fù)元素。 首先我們聲明一個泛型方法: 表明該方法適用于所有類型的數(shù)組。

    2024年02月12日
    瀏覽(51)
  • js中判斷一個對象是否存在

    js中判斷一個對象是否存在

    一、Boolean()方法 用Boolean()方法可以將Js中的任意數(shù)據(jù)類型轉(zhuǎn)為布爾值: 二、用于判斷xx是否存在 js一般會自動執(zhí)行Boolean()方法,我們可以借此判斷某個對象在js當(dāng)前的執(zhí)行環(huán)境中知否存在。如: 又如,可以判斷當(dāng)前環(huán)境下某個對象是否存在。 在為一個元素綁定了某個事件后,

    2024年02月13日
    瀏覽(97)
  • js之刪除對象屬性的三種方法 & 判斷對象中是否有某一屬性的四種方法

    js之刪除對象屬性的三種方法 判斷對象中是否有某一屬性的四種方法 示例 1、基礎(chǔ)版 2、進(jìn)階版 1、刪除一個對象上的屬性 1.1、delete 語法 delete 對象.屬性名 1.2、es6之解構(gòu)賦值 1.3、es6之反射 語法 Reflect.deleteProperty(對象,屬性名) 2、判斷對象中是否有某一屬性的四種方法 2.1、

    2024年02月13日
    瀏覽(21)
  • js合并數(shù)組對象(將數(shù)組中具有相同屬性對象合并到一起,組成一個新的數(shù)組)

    js合并數(shù)組對象(將數(shù)組中具有相同屬性對象合并到一起,組成一個新的數(shù)組)

    1.原數(shù)組: 2.合并后數(shù)組: 3.實現(xiàn)方法: 4.測試: 1.原數(shù)組: 2.合并后數(shù)組: 3.實現(xiàn)方法一: 測試: 4.實現(xiàn)方法二: 測試:

    2024年02月08日
    瀏覽(30)
  • 判斷數(shù)組中是否有重復(fù)元素

    給你一個整數(shù)數(shù)組 nums 。如果任一值在數(shù)組中出現(xiàn) 至少兩次 ,返回 true ;如果數(shù)組中每個元素互不相同,返回 false 。 方法一:排序 在對數(shù)字從小到大排序之后,數(shù)組的重復(fù)元素一定出現(xiàn)在相鄰位置中。因此,我們可以掃描已排序的數(shù)組,每次判斷相鄰的兩個元素是否相等

    2024年02月16日
    瀏覽(29)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包