组件的整体架构
Ryan724 opened this issue · comments
架构(不断改进ing):
- 给按键起名字(在keyutils中给每一个按键起一个名字,规范大写) getKeyName();
- 输入的键盘按键名称规范化,代码nameStand(data);
- 编写一个判断工具,判断数组中是否存在某元素 contains(item,arr);
- 寻找页面中data-hotkey的元素属性,labelBindFun();
- 定义keyup,keydown,keypress 三中事件
- 申明对象,定义要暴露的函数
- 执行初始化函数(收集data-hotkey标签的)
编写判断数组的时候使用以下几种方法:
Array.prototype.contains=function(){
var i = this.length;
while (i--) {
if (this[i] === obj) {
return true;
}
}
return false;
}
但是我选择了这么写:
var contains = function(item,arr){
return RegExp(item).test(arr);
}
因为在使用1,2种方法的时候,console.log(new Array()); 不是"[ ]",是“[contains:function(..){...}]”
至于为什么,留个疑问,我想想!