
    function JSLinkedList() {
        this.value = null;
        this.node = null;
        this.addLink = JSLinkedList_addLink;
        this.deleteLink = JSLinkedList_deleteLink;
        this.hasValue = JSLinkedList_hasValue;
        this.length = JSLinkedList_length;
        this.getGraphics = JSLinkedList_getGraphics;
        this.getText = JSLinkedList_getText;
    }
   
    function JSLinkedList_addLink(value) {
        var link = this;
      
        while (link.node != null) {
            link = link.node;
        }
        link.value = value;
        link.node = new JSLinkedList();
    }
   
    function JSLinkedList_deleteLink(value) {
        var link = this;
      
        while (link.node != null) {
            if (link.value == value) {
                link.value = link.node.value;
                link.node = link.node.node;
            }
            else {
                link = link.node;
            }
        }
    }
   
    function JSLinkedList_hasValue(value) {
        var link = this;
      
        while (link.node != null) {
            if (link.value == value) {
                return true;
            }
            else {
                link = link.node;
            }
        }
        return false;
    }
   
    function JSLinkedList_length() {
        var link = this;
        var length = 0;
      
        while (link.node != null) {
            length++;
            link = link.node;
        }
        return length;
    }

    function JSLinkedList_getGraphics() {
        var link = this;
        var graphics = 'LinkedList -> ';

        while (link.node != null) {
            graphics += link.value + " -> "
            link = link.node
        }
        graphics += link.value;
        return graphics;
    }

    function JSLinkedList_getText() {
        var link = this;
        var text = "";
        var ct = 0;

        while (link.node != null) {
            ct++;
            text += ct + ".  " + link.value + "\n"
            link = link.node
        }
        return text;
    }


