class Stack {
	  constructor() {
	    this.data = [];
			this.index = -1;
		}

		pop() { // 出栈
			if(this.index === -1) {
			  return console.log('栈下溢');
			}
			return this.data[this.index--]
		}

		push(elm) { // 入栈
	    this.index = ++this.index;
	    this.data[this.index] = elm;
		}

		size() { // 返回length
			return this.index + 1;
		}

		isEmpty() { // 是否为空
			return this.index === -1;
		}

		clear() { // 清空
 	    this.index = -1;
		}

	}

	var stack = new Stack();
  stack.push(1); // [1]
  stack.push(2); // [1,2]
  stack.clear(); //
	console.log(stack.isEmpty()); // true
  stack.push(2);
	console.log(stack.isEmpty()); // false
  console.log(stack)