首页 > 代码库 > js面向对象写法及栈的实现
js面向对象写法及栈的实现
1 function Stack() { 2 this.dataStore = []; 3 this.top = 0; //指向栈顶的位置 4 this.push = push; 5 this.pop = pop; 6 this.peek = peek; 7 this.clear = clear; 8 this.length = length; 9 10 function push(element) { 11 this.dataStore[this.top++] = element; //先赋值后++ 12 } 13 14 function peek() { 15 return this.dataStore[this.top - 1]; 16 } 17 18 function pop() { 19 return this.dataStore[--this.top]; //先--运算 20 } 21 22 function clear() { 23 this.top = 0; 24 } 25 26 function length() { 27 return this.top; 28 } 29 } 30 31 var s = new Stack(); 32 s.push("David"); 33 s.push("Raymond"); 34 s.push("Bryan"); 35 console.log(s); 36 console.log("length: " + s.length());
注意:
这样的一步操作arr[i++]="ddd";----》这里的执行顺序是:先执行赋值后进行的++运算
等价于下面的两布操作:
arr[i] = "ddd";
i++;
//这样写才是先执行++运算
arr[++i]="ddd";
js面向对象写法及栈的实现
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。