3、列表

来源:互联网 发布:2016年十大网络流行语 编辑:程序博客网 时间:2024/06/03 20:56
function List(){    this.listSize = 0;    this.pos = 0;    this.dataStore = [];    this.clear = clear;    this.find = find;    this.toString = toString;    this.insert = insert;    this.append = append;    this.remove = remove;    this.front = front;    this.end = end;    this.prev = prev;    this.next = next;    this.length = length;    this.currPos = currPos;    this.moveTo = moveTo;    this.getElement = getElement;    this.contains = contains;}function append(element){    this.dataStore[this.listSize++] = element;}function find(element){    for(var i=0; i<this.dataStore.length; ++i){        if(this.dataStore[i] == element){            return i;        }    }    return -1;}function remove(element){    var foundAt = this.find(element);    if(foundAt > -1){        this.dataStore.splice(foundAt, 1);        --this.listSize;        return true;    }    return false;}function length(){    return this.listSize;}function toString(){    return this.dataStore;}function insert(element, after){    var insertPos = this.find(after);    if(insertPos > -1){        this.dataStore.splice(insertPos, 0, element);        ++this.listSize;        return true;    }    return false;}function clear(){    delete this.dataStore;    this.dataStore.length = 0;    this.listSize = this.pos = 0;}function contains(element){    for(var i=0; i<this.dataStore; ++i){        if(this.dataStore[i] == element){            return true;        }    }    return false;}function front(){    this.pos = 0;}function end(){    this.pos = this.listSize - 1;}function prev(){    if(this.pos > 0){        --this.pos;    }}function next(){    if(this.pos < this.listSize - 1){        ++this.pos;    }}function currPos(){    return this.pos;}function moveTo(position){    this.pos = position;}function getElement(){    return this.dataStore[this.pos];}var names = new List();names.append("Late");names.append("in");names.append("autumn");console.log(names.toString());names.front();console.log(names.getElement());names.next();console.log(names.getElement());names.prev();console.log(names.getElement());

0 0
原创粉丝点击