首页 > 其他分享 >简洁优秀的代码记录

简洁优秀的代码记录

时间:2024-09-18 10:14:43浏览次数:14  
标签:简洁 obj 代码 param event handler key type 优秀

1、简洁的队列初始化:查询对象中某个属性,存在直接返回值,不存在,初始化该属性;

一般写法:

var obj = {};

var getQueue = (key) => {
  if (!obj[key]) {
    obj[key] = []
  }

  return obj[key]
}

 精简写法:

export default function mitt(all: EventHandlerMap) {
    all = all || Object.create(null);

    return {
        /**
         * Register an event handler for the given type.
         *
         * @param  {String} type    Type of event to listen for, or `"*"` for all events
         * @param  {Function} handler Function to call in response to given event
         * @memberOf mitt
         */
        on(type: string, handler: EventHandler) {
            (all[type] || (all[type] = [])).push(handler);
        }
    };
}

  2、无符号右移>>>:在搜索的事件监听函数不存在时,会返回一个极大的正数,传入 splice 后,并不会删除已有的函数监听器,从而实现了想要的功能。

亮眼代码:

/**
 * Remove an event handler for the given type.
 *
 * @param  {String} type    Type of event to unregister `handler` from, or `"*"`
 * @param  {Function} handler Handler function to remove
 * @memberOf mitt
 */
off(type: string, handler: EventHandler) {
    if (all[type]) {
        all[type].splice(all[type].indexOf(handler) >>> 0, 1);
    }
}

标签:简洁,obj,代码,param,event,handler,key,type,优秀
From: https://www.cnblogs.com/vicky-li/p/18418004

相关文章

  • HTTP 状态中200、302、403、 500代码含义?
    200-服务器成功返回网页300 -多种选择针对请求,服务器可执行多种操作。服务器可根据请求者(useragent)选择一项操作,或提供操作列表供请求者选择。301 -永久移动请求的网页已永久移动到新位置。服务器返回此响应(对GET或HEAD请求的响应)时,会自动将请求者转到新位置......
  • 【模板代码的组织结构与模板的显式实例化和声明】模板代码的组织结构与模板的显式实例
    一、模板的组织结构之前对于模板,我们都是写在同一个.cpp.cpp.cpp文件下,那如果......
  • 【网络安全 | PHP代码审计】熊海cms
    原创文章,禁止转载。文章目录环境搭建代码审计文件包含漏洞SQL注入漏洞1SQL注入漏洞2SQL注入漏洞3SQL注入漏洞4SQL注入漏洞5SQL注入漏洞6XSS漏洞1XSS漏洞2垂直越权CSRF1CSRF2逻辑漏洞环境搭建https://down.chinaz.com/soft/36930.htm解......
  • 代码随想录算法训练营第六十天 | Bellman_ford之判断负权回路
    目录Bellman_ford之判断负权回路思路常规拓展方法一: Bellman_ford-超时方法二:Bellman_ford2方法三:Bellman_ford队列优化Bellman_ford之判断负权回路题目链接:卡码网:95.城市间货物运输II文章讲解:代码随想录 某国为促进城市间经济交流,决定对货物运输提供......
  • 代码随想录算法训练营第六十天 | Bellman_ford 队列优化算法
    目录Bellman_ford队列优化算法思路模拟过程方法一:Bellman_ford队列优化Bellman_ford队列优化算法题目链接:卡码网:94.城市间货物运输I文章讲解:代码随想录 某国为促进城市间经济交流,决定对货物运输提供补贴。共有n个编号为1到n的城市,通过道路网络连接,......
  • Mybatis-generator自动生成代码的步骤
    使用MyBatisGenerator自动生成MyBatis代码的步骤1.添加依赖首先,确保你的项目中包含了MyBatisGenerator的依赖。对于Maven项目,在pom.xml文件中添加如下依赖(请替换为适合你项目的版本号):<dependency><groupId>org.mybatis.generator</groupId>`在这里插入代码片......