javascript模擬實現ArrayList效果程式碼例項
在js中並沒有ArrayList,不過可以模擬來實現,下面就是一段這樣的例項程式碼。
程式碼如下:
[JavaScript] 純文字檢視 複製程式碼function ArrayList(arr){ this._elementData = arr || []; } var arrayListPrototype = { '_arrayPrototype': Array.prototype, '_getData': function () { return this._elementData; }, 'size': function () { return this._getData().length; }, 'isEmpty': function () { return this.size() === 0; }, 'contains': function (obj) { return this.indexOf(obj) > -1; }, 'indexOf': function (obj) { var index , data = this._getData(), length = data.length; for (index = 0; index < length; index++) { if (obj === data[index]) { return index; } } return -1; }, 'lastIndexOf': function (obj) { var index , data = this._getData(), length = data.length; for (index = length - 1; index > -1; index--) { if (obj === data[index]) { return index; } } return -1; }, 'get': function (index) { return this._getData()[index]; }, 'set': function (index, element) { this._getData()[index] = element; }, 'add': function (index, element) { if (element) { this.set(index, element); } else { return this._getData().push(index); } }, 'remove': function (index) { var oldValue = this._getData()[index]; this._getData()[index] = null; return oldValue; }, 'clear': function () { this._getData().length = 0; }, 'addAll': function (index, array) { if (array) { this._getData().splice(index, 0, array); } else { this._arrayPrototype.push.apply(this._getData(), index); } } }; ArrayList.prototype = arrayListPrototype; var arr = new ArrayList([3, 6, 5, 'jquery教程', 'css', '螞蟻部落']); console.log(arr.contains('css')); console.log(arr.indexOf('螞蟻部落')); console.log(arr.lastIndexOf(6)); console.log(arr.get(2)); arr.addAll([1, 2, 3]); console.log(arr);
相關文章
- html實現簡單ListViews效果的例項程式碼HTMLView
- JavaScript模擬拋物運動的程式碼實現JavaScript
- JavaScript實現選項卡效果JavaScript
- jQuery tab選項卡效果程式碼例項jQuery
- canvas載入效果程式碼例項Canvas
- CSS橢圓效果程式碼例項CSS
- JavaScript in運算子程式碼例項JavaScript
- JavaScript模擬拋物效果JavaScript
- 美化滾動條效果程式碼例項
- canvas原型鐘錶效果程式碼例項Canvas原型
- css3水滴效果程式碼例項CSSS3
- css背景虛化效果程式碼例項CSS
- canvas氣泡上浮效果程式碼例項Canvas
- JavaScript運動框架程式碼例項JavaScript框架
- JavaScript取餘數程式碼例項JavaScript
- JavaScript 阻止事件冒泡程式碼例項JavaScript事件
- jQuery點選滑出層效果程式碼例項jQuery
- css3晃動效果程式碼例項CSSS3
- CSS3心形效果程式碼例項CSSS3
- div前後翻轉效果程式碼例項
- 當前文字框高亮效果程式碼例項
- CSS3旋轉效果程式碼例項CSSS3
- 淡入淡出效果簡單程式碼例項
- canvas繪製箭頭效果程式碼例項Canvas
- javascript模擬new的實現JavaScript
- JavaScript 模擬new的實現JavaScript
- JavaScript模擬實現replaceAll方法JavaScript
- JavaScript中模擬實現jsonpJavaScriptJSON
- JavaScript陣列合並程式碼例項JavaScript陣列
- JavaScript倒數計時程式碼例項JavaScript
- JavaScript 表單驗證程式碼例項JavaScript
- CSS3滑過光束效果程式碼例項CSSS3
- CSS3小黃人效果程式碼例項CSSS3
- css3折角效果程式碼例項CSSS3
- CSS3梯形效果程式碼例項CSSS3
- CSS3背景漸變效果程式碼例項CSSS3
- CSS3星系運動效果程式碼例項CSSS3
- vuejs實現新增tag標籤程式碼例項VueJS
- 例項程式碼分享Python實現Linux監控PythonLinux