摘要:結(jié)構(gòu)本身可以看作一個(gè)線性數(shù)組,因此可以利用數(shù)組來封裝,首先,定義中的數(shù)組和各類方法。用來存儲(chǔ),與中的對(duì)象很相似,因此,可以通過封裝對(duì)象,定義一系列方法來構(gòu)造。
在前端,我們通常需要用JS處理一些從服務(wù)器返回的數(shù)據(jù),例如簡(jiǎn)單的數(shù)據(jù)清洗、對(duì)數(shù)據(jù)格式做細(xì)微的調(diào)整等等,這些需求在java中借助集合通常很容易完成,但JS原生不提供類似java中的集合,這時(shí),我們可以利用JS中的原生數(shù)組和Object對(duì)象來封裝List、Map、Set這些集合,下面依次說明如何封裝這些集合。
ListList結(jié)構(gòu)本身可以看作一個(gè)線性數(shù)組,因此可以利用數(shù)組來封裝,首先,定義List中的數(shù)組和各類方法。
function List(){ this.values = new Array(); this.add = function(a){ this.values.push(a); } this.get = function(index){ if(index >= this.values.length){ console.error("index is out range of the max index"); }else{ return values[index]; } } ...... }Map
Map用來存儲(chǔ)key-Value,與JS中的Object對(duì)象很相似,因此,可以通過封裝Object對(duì)象,定義一系列方法來構(gòu)造Map。
function Map(){ this.objs = {}; this.put = function(key ,value){ this.objs[key] = value; } this.get = function(key){ if(key in this.objs){ return this.objs[key]; }else{ console.debug("this key is not in the Map"); } } this.keys = function(){ var a = new Array(); for(var b in this.objs){ a.push(b); } return a; } this.delete = function(key){ delete this.objs[key]; } }
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/104125.html
摘要:文章博客地址所創(chuàng)建的數(shù)據(jù)有一個(gè)迷人的特性數(shù)據(jù)創(chuàng)建后不會(huì)被改變。是的基類,使用該類時(shí)需要至少繼承其子類中的一個(gè)??偨Y(jié)所提供的和固有的各有優(yōu)勢(shì),未來有可能制定一套原生的規(guī)范,在這之前,是一個(gè)不錯(cuò)的選擇。參考資料官方文檔 文章博客地址:http://pinggod.com/2016/Immutable/ Immutable.js 所創(chuàng)建的數(shù)據(jù)有一個(gè)迷人的特性:數(shù)據(jù)創(chuàng)建后不會(huì)被改變。我們使用 ...
摘要:集合框架重點(diǎn)理解用于存儲(chǔ)數(shù)據(jù)的容器。集合容器在不斷向上抽取過程中。出現(xiàn)了集合體系。,刪除將集合中的元素全刪除,清空集合。刪除集合中指定的對(duì)象。注意刪除成功,集合的長(zhǎng)度會(huì)改變。作用用于取集合中的元素。是集合特有的迭代器。是單列集合是雙列集合 集合框架(重點(diǎn)理解):用于存儲(chǔ)數(shù)據(jù)的容器。特點(diǎn):1:對(duì)象封裝數(shù)據(jù),對(duì)象多了也需要存儲(chǔ)。集合用于存儲(chǔ)對(duì)象。2:對(duì)象的個(gè)數(shù)確定可以使用數(shù)組,但是不確定怎...
摘要:集合類主要負(fù)責(zé)保存盛裝其他數(shù)據(jù),因此集合類也被稱為容器類。所有的集合類都位于包下。表示一組對(duì)象,這些對(duì)象也稱為的元素。成員方法把集合轉(zhuǎn)成數(shù)組迭代器,集合的專用遍歷方式之接口概述有序的,也稱為序列。 前言 在編程中,常常需要集中存放多個(gè)數(shù)據(jù)。從傳統(tǒng)意義上講,數(shù)組是我們的一個(gè)很好的選擇,前提是我們實(shí)現(xiàn)已經(jīng)明確知道我們將要保存的對(duì)象的數(shù)量。 一旦在數(shù)組初始化時(shí)指定了數(shù)組長(zhǎng)度,這個(gè)數(shù)組長(zhǎng)度就...
摘要:提供了線程安全的共享對(duì)象,在編寫多線程代碼時(shí),可把不安全的整個(gè)變量封裝進(jìn),或者把該對(duì)象與線程相關(guān)的狀態(tài)使用保存并不能替代同步機(jī)制,兩者面向的問題領(lǐng)域不同。 ThreadLocal類 使用ThreadLocal類可以簡(jiǎn)化多線程編程時(shí)的并發(fā)訪問,使用這個(gè)工具類可以很簡(jiǎn)捷地隔離多線程程序的競(jìng)爭(zhēng)資源。Java5之后,為ThreadLocal類增加了泛型支持,即ThreadLocal Threa...
閱讀 647·2021-11-24 09:39
閱讀 3489·2019-08-30 15:53
閱讀 2529·2019-08-30 15:44
閱讀 3247·2019-08-30 12:54
閱讀 2216·2019-08-29 12:23
閱讀 3312·2019-08-26 14:05
閱讀 2113·2019-08-26 13:36
閱讀 3445·2019-08-26 13:33