JavaScript 设计列表

本文探讨了JavaScript中列表的抽象数据类型定义,强调了列表作为有序数据集合的特性,允许存储各种类型的数据。文章指出,初始遍历方法存在缺陷,会导致无限循环,并提供了修正后的正确遍历方式,建议将遍历逻辑封装为方法以便重用。
摘要由CSDN通过智能技术生成

为了设计列表的抽象数据类型,需要给出列表的定义,包括列表应该拥有哪些属性,应该
在列表上执行哪些操作。
列表是一组有序的数据。每个列表中的数据项称为元素。在 JavaScript 中,列表中的元素
可以是任意数据类型。

列表的抽象数据类型定义

方法 定义
listSize(属性) 列表的元素个数
pos(属性) 列表的当前位置
length(属性) 返回列表中元素的个数
clear(方法) 清空列表中的所有元素
toString(方法) 返回列表的字符串形式
getElement(方法) 返回当前位置的元素
insert(方法) 在现有元素后插入新元素
append(方法) 在列表的末尾添加新元素
remove(方法) 从列表中删除元素
front(方法) 将列表的当前位置设移动到第一个元素
end(方法) 将列表的当前位置移动到最后一个元素
prev(方法) 将当前位置后移一位
next(方法) 将当前位置前移一位
currPos(方法) 返回列表的当前位置
moveTo(方法) 将当前位置移动到指定位置
function List() {
   
	this.listSize = 0;			// 初始化列表元素个数
	this.pos = 0;				// 初始化列表元素个数
	this.dataStore = []; 		// 初始化一个空数组来保存列表元素
	
	this.append = append;   	// 给列表的下一个位置增加一个新的元素
	this.find = find;    		// 查找指定元素
	this.insert = insert;		// 向列表中指定元素后添加元素
	this.remove = remove;		// 删除查找到的元素
	this.contains = contains;	// 判断列表中是否有某个值,和 find 差不多
	this.clear = clear;			// 清空元素:先删除数组,在下面新建空数组,设置列表长度为0
	this.toString = toString;	// 以数组形式显示所有列表元素(不是字符串)
	this.length = length;		// 查询列表中有多少元素
	
	this.front = front;			// 开头位置
	this.end = end;				// 结尾位置
	this.prev = prev;			// 位置前移
	this.next = next;			// 位置后移
	
	this.currPos = currPos;		// 返回当前所在位置
	this.moveTo = moveTo;		// 移动到指定位置
	this.getElement = getElement;	// 获取指定位置的元素

	this.nextCon = nextCon;		// 新增从前向后遍历的方法
	this.prevCon = prevCon;		// 新增从后向前遍历的方法
}

/* 定义方法 */

// 添加元素
function append
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值