首页 > 编程语言 >nodejs 伪全局变量模块

nodejs 伪全局变量模块

时间:2023-06-19 14:14:18浏览次数:38  
标签:return 模块 nodejs value globals key false 全局变量 any

使用这个文件可以实现不同文件中读写变量,适合当做共享变量
文件名:globals.ts

let globals:any = {
    myGlobal: {
        value: 'can be anytype: String, Array, Object, ...'
    },
    aReadonlyGlobal: {
        value: 'this value is readonly',
        protected: true
    },
    dbConnection: {
        value: 'mongoClient.db("database")'
    },
    myHelperFunction: {
        value: function () { console.log('do help') }
    },
};

module.exports.get = function (key:any) {
    // return variable or false if not exists
    return globals[key] && globals[key].value ? globals[key].value : false;
};

module.exports.set = function (key:any, value:any) {
    // exists and is protected: return false
    if (globals[key] && globals[key].protected && globals[key].protected === true)
        return false;
    // set global and return true
    globals[key] = { value: value };
    return true;
};

标签:return,模块,nodejs,value,globals,key,false,全局变量,any
From: https://www.cnblogs.com/chacebai/p/17490989.html

相关文章

  • BOSHIDA AC DC电源模块在工业控制器的应用
    BOSHIDAACDC电源模块在工业控制器的应用AC/DC电源模块是一种广泛应用于工业控制器中的电源设备,它的作用是将交流电源转换为直流电源,为工业控制器提供稳定可靠的电源供应。在工业控制器中,AC/DC电源模块的应用不仅可以提高系统的稳定性和可靠性,还可以实现节能和环保,降低系统维护......
  • 用 Typescript 搭建 Nodejs Server
    Typescript是微软开发的自由和开源的变成语言,是Javascript的超集,它可以编译成Javascript。Typescript支持Javascript的语法,同时它又包含了类型定义、接口、枚举、泛型等很多后端语言的特点,能在编译时支持类型检查,因此可以很好的提升代码质量。本文将演示如何使用Typescipt......
  • nrf52832学习-app_timer模块
    简单使用:app_timer是模块,使用时需要在sdk_config.h文件中将其使能添加头文件app_timer.h定义Timer定时器唯一识别号_my_timer_id和需要的定时时间常量MY_TIMER_INTERVALAPP_TIMER_DEF(_my_timer_id);#defineMY_TIMER_INTERVALAPP_TIMER_TICKS(_milliseconds)......
  • nrf52832学习-app_scheduler模块
    软件调度模块,但不是用来做任务调度的,而是为了在main函数中执行中断任务。说白了就是一个队列,中断中将数据和执行的函数放入队列中,然后main函数里一直去调用查询去执行,从而不阻塞中断app_sched_execute用来在main函数中执行,一直调用app_sched_event_put函数是在中断中调用将任务添......
  • Python第三方模块:pymongo模块的用法
    pymongo模块是python操作mongo数据的第三方模块,记录一下常用到的简单用法。首先需要连接数据库:MongoClient():该方法第一个参数是数据库所在地址,第二个参数是数据库所在的端口号authenticate():该方法第一个参数是数据库的账号,第二个参数是数据库的密码frompymongoimpor......
  • 【雕爷学编程】Arduino动手做(115)---HB100多普勒雷达模块
    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)与否,都会记录下来—小小的进步或是搞......
  • Loguru:优雅的日志管理模块
    安装pip3installloguru日志等级等级方法TRACElogger.trace()DEBUGlogger.debug()INFOlogger.info()SUCESSlogger.sucess()WARNINGlogger.warnning()ERRORlogger.error()CRITICALlogger.critical()基本使用fromloguruimportlogger......
  • 【雕爷学编程】Arduino动手做(114)---US-015高分辨超声波模块
    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)与否,都会记录下来---小小的进步或是......
  • OverTheWire攻关过程-Natas模块8
    我们打开lv8,查看信息有一个验证框输入值显示错误将输入的值进行对比,相同就过我们将值输入错误查询下这些加密函数将数字装换下控制台不行然后查询函数反转字符串函数查询解码以下是过程,使用的都是在线工具16进制转换成字符串反转字符base64解码得到结果oubWYf2kBq提交得到密码验证......
  • OSI七层协议剩余、socket模块、半连接池
    传输层之TCP与UDP协议TCP与UDP都是用来规定通信方式的 通信的时候可以随心所欲的聊也可以遵循一些协议符合要求的聊随心所欲的聊:文字图片视频遵循一些协议:开头带尊称首行空两个只准用官话ps:不遵循上述协议也可以通信只不过遵循了更合规合法合理!!!1.TCP协议(重......