js 数组_模拟堆栈实现——前进、撤销…
2017-04-14 15:15
302 查看
5
个参数:
第一个参数:第一个数组:用于保存改变后的数据状态
第二个参数:第二个数组:用于保存撤销后的数据,便于
ctrl+y 前进
第三个参数:字符串标志:"s"
代表保存数据,"z" 代表撤销数据,"y" 代表前进数据
第四个参数:传进来的要保存的数据:保存到数组中
第五个参数:传进来的要保存的初始时数据(例如:canvas的没画画时的空白状态):同样保存到数组中
因为你撤销时,最多撤销到 第五个
参数的状态
(前三个是必传参数,后面两个在 保存 数据时传入要保存的数据,撤销 或 前进
时,随便传什么)
返回数据:如果是 ctrl+z
,返回前一个数据;如果是 ctrl+y 返回后一个数据
这时:你就可以用返回的数据覆盖当前状态,达到撤销 与 前进 的目的
----------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------
压缩后的代码:
【function
stack(e,c,b,d,a){switch(b){case"z":if(e.length>1){c.push(e[e.length-1]);e.pop()}break;case"y":if(c.length>0){e.push(c[c.length-1]);c.pop()}break;case"s":if(e[0]!=a){e.unshift(a)}c.splice(0,c.length);e.push(d);break;default:alert("Error");break}return
e[e.length-1]};】
----------------------------------------------------------------------------------------
源代码文件:链接: http://pan.baidu.com/s/1c9Lwpo 密码: en9q
个参数:
第一个参数:第一个数组:用于保存改变后的数据状态
第二个参数:第二个数组:用于保存撤销后的数据,便于
ctrl+y 前进
第三个参数:字符串标志:"s"
代表保存数据,"z" 代表撤销数据,"y" 代表前进数据
第四个参数:传进来的要保存的数据:保存到数组中
第五个参数:传进来的要保存的初始时数据(例如:canvas的没画画时的空白状态):同样保存到数组中
因为你撤销时,最多撤销到 第五个
参数的状态
(前三个是必传参数,后面两个在 保存 数据时传入要保存的数据,撤销 或 前进
时,随便传什么)
返回数据:如果是 ctrl+z
,返回前一个数据;如果是 ctrl+y 返回后一个数据
这时:你就可以用返回的数据覆盖当前状态,达到撤销 与 前进 的目的
----------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------
压缩后的代码:
【function
stack(e,c,b,d,a){switch(b){case"z":if(e.length>1){c.push(e[e.length-1]);e.pop()}break;case"y":if(c.length>0){e.push(c[c.length-1]);c.pop()}break;case"s":if(e[0]!=a){e.unshift(a)}c.splice(0,c.length);e.push(d);break;default:alert("Error");break}return
e[e.length-1]};】
----------------------------------------------------------------------------------------
源代码文件:链接: http://pan.baidu.com/s/1c9Lwpo 密码: en9q
相关文章推荐
- 用LinkedList类实现 模拟堆栈…
- JS数组实现队列和堆栈
- 公式find函数结合数组 实现…
- 用数组实现js中的堆栈 或者队列数据结构
- 数组模拟无限级分类及可伸缩——php&&js(jQuery)
- js利用数组实现队列与堆栈效果
- JS模拟实现ECMAScript5新增的数组方法
- js&&省市级联列表&&分别用数组和JSON实现
- js 数组
- js利用数组实现队列与堆栈效果
- js 字符串和数组反转
- js 数组赋值和java数组赋值
- 【c语言】 模拟实现printf,要求功能: my_printf("dc\ts\ndc\ndc\ts!", ...)
- javascript数组&省市联动分别用js数组和JSON实现
- js 新建数组,数组添加删除修改
- 用数组实现堆栈 && 判断接收到的数据师是否连续
- js 数组去重
- 在DataTable中实现DataTable.Select("Distinct")功能/数组的方式实现DataTable中的distinct
- 用js实现随机返回数组的一个元素
- js模拟实现Array的sort方法