合理用全局变量

  有段时间没有更博,家里没有网,这周的任务完成了,空余时间写写这个周的一些工作体会

  最近在改别人写好的代码,业务需求是关于省市区县级联,当然别人已经写好了,现在需要新添的功能是在省,市,区县上加一个模糊查询的功能首先这个是pc端的功能,用onkeyup事件。其实我比较喜欢定义function,在元素上绑定事件,因为如果其他的元素也要用到这个方法怎么办?虽这样的话会给增加全局变量,但是还没有执行到的时候function是undefined吧。虽然这样的话,页面不是纯的html,有没有更好的解决办法呢?求指教。

  说说全局变量吧,改别人的代码,我想不通为啥要定义那么多全局变量,我都不敢随便改了,把主要的几个定义下再注释不行吗?说到这里,我也要养成写注释的习惯呀,这就是别人看你代码的痛苦。我觉得有的变量就当形参传就行了,没有必要定义成全局变量,这样导致我在改代码的时候,有的参数已经失去了原本的意思了。

  1.清空(市模糊查询标识)

  定义了txtClear=0,表示是从模糊查询展示的省份中,展示所有的市,(在模糊点击方法里将txtClear置为0)

    txtClear!=0,则从所有的省份中选中一个省(四川),展示所有的市(此时在模糊查询市(阳 德阳 资阳)),这个时候再切换到贵州,(默认显示贵阳),这个时候就要清空市模糊查询输入框,展示所有的市。if($("#txtclear").val()!="0"){//从全部省中点击,清空市模糊查询
                    $("#txtcity").val("");
                  allCities = jsonCites.cities;
                 }$("#txtclear").val("");//执行后将txtclear清空

  2.freemarker

  首先引入org.freemarker的包

  需求是将字典表和枚举类同步起来,之前项目里没有字典表,只有枚举类。

  /** freemarker模板配置器 */  private Configuration cfg;

  cfg = new Configuration();

  //path,为freemaker模板所在的上级目录路径

  File file = new File(path);
  cfg.setDirectoryForTemplateLoading(file);

  Template template;  //beanOut,生成的文件的输出流 new OutputStreamWriter(new FileOutputStream(getFileName()));  //private String getFileName(){ return nameSpace+classname+".java";}  //data,map型,给模板传的数据
  template = cfg.getTemplate("enum_template.ftl");  template.process(data, beanOut);3.idea工具,跨module访问文件  这个真弄不出来,看着老大调试出来的,大神啊。原来很简单的。  String targetRootPath = CodeCreater.class.getResource("/").getPath()+../../../entity/src/main/java/com/hongli/lahuobao/entity/test/;  就是将源路径得到后在看将你觉得的路径在电脑里头找的出来不
 

  

时间: 2024-10-06 00:22:14

合理用全局变量的相关文章

Python之路18-函数作用域、全局变量、局部变量

#全局变量 school = 'lianhedaxue' def test(name):     #强制修改全局变量     global school     school = 'haha'     print ('before change',name,school)     name = 'Jack'   #这个函数就是这个变量的作用域     print ('after change',name) name = 'Tom' test(name) print (name) print (s

全局变量导致所有命令都执行不了。

在配置MySQL时,做了个全局变量,少打了个"$"符号,导致所有命令都执行不了. 一开始我一直琢磨不出来为什么所有命令都执行不了. 如图: 要加个"$" 请用,命令全路径编辑/etc/profile: 输入: /usr/bin/vim /etc/profile 注意vim后有空格 然后将原来修改的内容删除 重新启动.shutdown -r now 或者reboot

C语言之全局变量和局部变量

全局变量和局部变量的简介(tips:很重要 牢记) 全局变量:就是定义在函数外的变量 全局变量可以在任意函数中使用 生命周期:程序一启动就开辟空间,直到程序退出才回收 全局变量不允许同名 局部变量:就是定义在函数内的变量 局部变量只能在它声明的位置开始到它所在的代码块结束 生命周期:它所在的代码块结束就回收 不同的作用域里,局部变量可以同名 tips:代码例子如下 #include <stdio.h> int globeNum = 10;   //全局变量 void test1(){ prin

全局变量的危害

今日饱受一个全局变量的危害,导致多个项目出现问题,揪其根本原因是,全局变量的危害导致的.这里转载一篇关于全局变量危害的代码:工作也有些年头了,从一位技术新人成长到现在自诩小牛级别的人物,少不了要自己寻找资料阅读.论坛上.书店里.杂志上......要嘛是些菜鸟浅薄的自炫处女贴,要嘛是高屋建瓴云里来雾里去的概念文,好不容易遇到个实践型高手写的文章,却在渐入佳境之际嘎然而止.本是隔靴搔痒,看完后心中更是郁结不已.也罢,今日且强装回大牛,献丑谈一谈嵌入式C编程中全局变量问题.嵌入式特别是单片机os-le

线程间通信 1全局变量2当前主对话框指针3发消息方式4 AfxBeginThread的返回值(为CWinThread类型的指针)5AfxGetApp

①.最常用的方式:全局变量或者多个线程都能看到的一个东东 1.全局变量方式: int g_Num = 100; UINT __cdecl ThreadWriteProc(LPVOID lpParameter) { while(TRUE) { ++g_Num; Sleep(50); } return 100; } UINT __cdecl ThreadReadProc(LPVOID lpParameter) { CString strTipMsg; while(TRUE) { strTipMsg.

c语言全局变量和局部变量问题汇总

1.局部变量是否能和全局变量重名? 答:能,局部会屏蔽全局.要用全局变量,须要使用"::" 局部变量能够与全局变量同名,在函数内引用这个变量时,会用到同名的局部变量,而不会用到全局变量.对于有些编译器而言,在同一个函数内能够定义多个同名的局部变量,比方在两个循环体内都定义一个同名的局部变量,而那个局部变量的作用域就在那个循环体内. 2.怎样引用一个已经定义过的全局变量? 答:extern 能够用引用头文件的方式,也能够用externkeyword,假设用引用头文件方式来引用某个在头文件

Objctive-C 全局变量

一,全局变量 1,在m文件中的所有方法,类定义和函数定义之外 例:Square.m中定义一个全局变量 , 在main.m中引用 Square.m代码如下: // //  Square.m //  Square // //  Created by Apple on 2017/9/9. //  Copyright  2017年 Apple. All rights reserved. // #import "Square.h" int global_val = 20;//定义一个全局变量 @

局部变量,全局变量,extend,static

main.c #include <stdio.h> #include "zs.h" /* 局部变量是定义在函数.代码块.函数形参列表.存储在栈中,从定义的那一行开始作用域结束释放. 全局变量:写在函数,代码块,形参列表外的变量,从定义的那一行开始一直直到文件末尾(暂时这样认为),全局变量如果没有进行初始化是0,存储在静态区中, 随着程序的结束而结束. */ /* 全局变量分为两种: 1.外部全局变量: 可以被其它文件访问的全局变量我们称之为外部全局变量(默认情况下所有的全局

JavaSCript全局变量与局部变量

今天公司一个实习小妹子问我两段js代码的区别: [javascript] view plain copy <script type="text/javascript"> var a = "Hello"; function test(){ var a; alert(a); a = "World"; alert(a); } </script> [javascript] view plain copy <script ty

opencv如何实现【不用全局变量进行滚动条控制】

opencv中自带滚动条,其中一个问题是该回调函数(on_trackbar)大多使用的是全局变量,大型项目调试时弊端众多,比如下图: 为此,留意了void on_Trackbar(int par1, void *)中的第二个参数, 按理说,这是允许用户传递参数进入的,但网上及书籍中未找到不用全局变量而自己传参数的例子,因此特意写了一版可以自己传局部参数的写法. 代码如下: #include <opencv2/opencv.hpp> using namespace cv; namespace y