亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

es6如何將類數組對象轉數組

發布時間:2023-01-03 15:04:55 來源:億速云 閱讀:191 作者:iii 欄目:web開發

今天小編給大家分享一下es6如何將類數組對象轉數組的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

轉換方法:1、使用“for in”語句將類數組對象轉換為數組,語法“for(var i in obj){console.log(arr.push(obj[i]));}”;2、使用內置對象keys和valus,語法“Object.keys(obj)”和“Object.values(obj)”;3、使用Array對象的from()函數,語法“Array.from(obj)”。

什么是類數組?

JavaScript中有一些看起來像卻又不是數組的對象,叫做類數組。

什么是類數組對象?

只包含使用從0開始的,并且是自然遞增的整數作為鍵,還定義了length用來表示元素個數的對象,通常就認為是類數組對象。

  • 具有指向對象元素的數字索引下標,以及 length 屬性告訴我們對象的元素個數;

  • 不具有比如像push 、 forEach 以及 indexOf 等數組對象具有的方法;

類數組轉換為數組

第一種方法:使用for in 將類數組對象轉換為數組

<script type="text/javascript">
		var obj = {
			0: 'a',
			1: 'b',
			2: 'c',
		};
		console.log(obj[0]);
		console.log(typeof obj);
		var arr = [];
		for(var i in obj){
			console.log(arr.push(obj[i]));
		}
		console.log(arr);
		//把類數組對象放在一個名為arr的新數組里使得obj變成了數組

		console.log(arr instanceof Array);//判斷arr是否為數組

	</script>

es6如何將類數組對象轉數組

如果想獲取整個對象:

let arr1 = []
		for (let i in obj) {
			let newobj = {}
			newobj[i] = obj[i]
			arr1.push(newobj);
		}
		console.log(arr1);

es6如何將類數組對象轉數組

第二種方法:內置對象keys和valus

內置對象Object.keys:獲取鍵

內置對象Object.values獲取值

let obj = {
			'1': 5,
			'2': 8,
			'3': 4,
			'4': 6
		};
		//內置對象Object.keys:獲取鍵
		var arr = Object.keys(obj)
		console.log(arr);
		//內置對象Object.values獲取值
		var arr2 = Object.values(obj)
		console.log(arr2);

es6如何將類數組對象轉數組

第三種方法:Array.from()

let obj = {
		'0': 5,
		'1': 8,
		'2': 4,
		'3': 6,
		'length':4
	};
	    let arr = Array.from(obj)
		console.log(arr);

Array.from()把對象轉化為數組必須符合2個條件

1:鍵必須是數值

2:必須帶有length的鍵值對

不寫length時:

es6如何將類數組對象轉數組

加length鍵值對時:

es6如何將類數組對象轉數組

擴展知識:for of、for in和forEach的區別

let arr = ['周一', '周二', '周三', '周四','周五','周六','周日']
		// for of
		for (let item of arr) {
			console.log(item);
		}
        // for in
		for (let i in arr) {
			console.log(i);
		}
        // forEach
        arr.forEach(item => {
			console.log(item);
		})

效果如圖所示:

es6如何將類數組對象轉數組

for of中 item代表數組中的某一項

for in中 i代表索引,一般用來遍歷對象

forEach方法用于調用數組的每個元素,并將元素傳遞給回調函數。

for of

1.可以避免 for-in 循環中的所有陷阱
2.可以使用 break, continuereturn
3.for-of 循環不僅僅支持數組的遍歷。同樣適用于很多類似數組的對象
4.它也支持字符串的遍歷
5.for-of 并不適用于處理原有的原生對象

for in

注:for..in循環會把某個類型的原型(prototype)中方法與屬性給遍歷出來,所以這可能會導致代碼中出現意外的錯誤

for Each

1、foreach 方法沒辦法使用return,break,continue語句來跳出循環

2、forEach方法中的function回調有三個參數:

es6如何將類數組對象轉數組

(1)參數是遍歷的數組內容(必需)
(2)參數是對應的數組索引(可選)
(3)參數是數組本身(可選)

3、對數組的每個元素執行一次提供的函數。返回undefined

以上就是“es6如何將類數組對象轉數組”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

es6
AI

吉首市| 凉山| 丽江市| 长阳| 吐鲁番市| 中卫市| 龙陵县| 田林县| 醴陵市| 克东县| 同仁县| 衡阳县| 治多县| 南陵县| 乌苏市| 章丘市| 石阡县| 呼伦贝尔市| 湄潭县| 正定县| 闻喜县| 安远县| 三明市| 铜陵市| 浦东新区| 大丰市| 德州市| 宜章县| 元阳县| 绿春县| 德庆县| 洪湖市| 沭阳县| 安多县| 太康县| 宿州市| 寻甸| 江口县| 老河口市| 新民市| 改则县|