1、拼接字符串时使用substring方法进行截取避免每次都判断:
在拼接字符串时需要遵从指定的格式(如用逗号隔开),后面进行取值或验证时可以按照前面的规则去除结果。但拼接的第一个值,前面往往是不需要加逗号的,通过的做法是加if判断,如果是第一个数据或拼接的字符串若为空,就不加逗号,这样子是可以解决问题,若要拼接的数据过多,每次都判断会很影响性能。个人觉得比较快刀斩乱麻的方式是直接用substring方法进行截取。如下面的例子:
public static void main(String[] args) {
long startTime = System.currentTimeMillis();
String str1="";
for(int i=0;i<10000;i++){
if(i==0){
str1+=i;
}else{
str1+=","+i;
}
}
System.out.println(str1);
long endTime = System.currentTimeMillis();
System.out.println("执行该方法所需时间:"+(endTime-startTime));//output:376
long startTime2 = System.currentTimeMillis();
String str2="";
for(int i=0;i<10000;i++){
str2+=","+i;
}
if(str2.length()>0){
str2=str2.substring(1);
}
System.out.println(str1);
long endTime2 = System.currentTimeMillis();
System.out.println("执行该方法所需时间:"+(endTime2-startTime2));//output:320
}
2、创建Jquery对象:
平常大部分情况都是用Jquery获取已经存在的对象,今天要凭空弄一个对象出来,对于网上说的,用new关键字来new一个Jquery对象我不太在行,就自己认为的方法定义了一个,如下:
var func = "";
var $function = $(func);
$function.attr({"functionID":77777,"funViewID":viewID,"rViewID":0,"tableListID":tableListId});
alert($function.attr(viewID)+" "+$function.attr(tableListId));
alert出来竟然是两个undefined,不知道为什么?后来参照网上的方法(参考链接:
http://www.jb51.net/article/33403.htm)定义成下面这样子的:
var func = "";
var $function = $("<input>",{"id":"editRowFunc"});
$function.attr({"functionID":77777,"funViewID":viewID,"rViewID":0,"tableListID":tableListId});
alert($function.attr(viewID)+" "+$function.attr(tableListId));
成功alert。
3、JS调用字符串类型的方法
最近做一应用碰到一个问题,一个onlick事件上面绑定两个方法。要是正常的拼接代码那绝对是没问题的,直接在onclick事件上面写上两个方法名称即可,但问题通常都是不正常的。我这个onclic事件只能绑定一个(不是不能绑定两个,而是没法绑定两个),没办法,只能把触发事件的名称写在了标签上的属性中,类似于:
<input onclic="aaa();" id='testInput' type="button" scriptEvent="bbb" />
在aaa方法中处理完了之后,获取scriptEvent的属性值,然后再执行这个方法,具体方法如下:
var scriptEvent = $("#testInput").attr("scriptEvent");
if(!isempty(scriptEvent)){//说明有绑定事件
if(scriptEvent.indexOf("(")>0){//处理自带了()的情况
scriptEvent = scriptEvent.substring(0,scriptEvent.indexOf("("));
}
//执行方法
eval(scriptEvent+"('"+val+"')");//val是要传递的参数值
}
4、IE11中导入Excel时总是找不到文件
最近弄一个导Excel数据的功能,IE8中很正常,IE11和火狐中老是出错,说文件找不到。大概业务是这样子的:选择文件之后,通过AJAX进行文件上传,返回文件名称给页面,页面通过AJAX将名称传递给后台,后台读取Excel并返回。正常情况下,返回的文件名称是Object类型的,其值是字符串类型,且只有一个文件名称。但是在IE11或火狐中,这个Object的值除了文件名称之后还有一个隐藏的“\r\n”即换行符号,因此传递到后台的文件名称也有一个换行符,再根据这个含有了换行符的路径去找文件,必然找不到,所以就找不到文件啦。
解决:将Object类型的文件名称转换成String类型,然后用replace将\r、\n替换成空字符串。
用代码表示就是这样子的:
fileName = fileName.toString();//转换成字符串进行替换
fileName = fileName.replace("\r","").replace("\n","");//将换行符替换成空字符串
5、使用JS判断文件类型:
/**
* 该方法根据文件的后缀名判断文件类型
* @param fileType:文件格式
* */
function getFileType(fileType){
var flag=0;
if(fileType!=null && fileType.length>0){
fileType = jQuery.trim(fileType);
switch(fileType){
//图片格式
case "gif":flag=1;break;
case "jpg":flag=1;break;
case "jpeg":flag=1;break;
case "png":flag=1;break;
case "bmp":flag=1;break;
//office格式
case "doc":flag=2;break;
case "docx":flag=2;break;
case "xls":flag=2;break;
case "xlsx":flag=2;break;
case "ppt":flag=2;break;
case "txt":flag=2;break;
//视频格式
case "mp4":flag=3;break;
case "avi":flag=3;break;
case "wmv":flag=3;break;
case "rmvb":flag=3;break;
case "rm":flag=3;break;
case "flv":flag=3;break;
case "flash":flag=3;break;
case "mp4":flag=3;break;
case "3gp":flag=3;break;
case "mpg":flag=3;break;
case "vob":flag=3;break;
}
//或者使用EL表达式
if((/(?:jpg|gif|png|jpeg|bmp)$/i.test(fileType))){
fileType="1";
}else if((/(?:doc|docx)$/i.test(fileType))){
fileType="2";
}else if((/(?:xls|xlsx)$/i.test(fileType))){
fileType="3";
}else if((/(?:rar|zip)$/i.test(fileType))){
fileType="4";
}
}
return flag;
}
分享到:
相关推荐
平时在网上积累的一点小知识 平时在网上积累的一点小知识 平时在网上积累的一点小知识
重庆市2016年中考语文第二部分古诗文积累与阅读专题二文言文阅读第14篇小石潭记
sql积累小资料 包括oracle, sql server, mysql 分卷之二
八年级语文下册第二单元7大雁归来积累运用小题闯关新人教版20200228410
八年级语文下册第二单元8时间的脚印积累运用小题闯关新人教版20200228415
八年级语文下册第二单元5大自然的语言积累运用小题闯关新人教版2020022843
八年级语文下册第二单元6阿西莫夫短文两篇积累运用小题闯关新人教版2020022845
云南省西双版纳傣族自治州小升初语文知识专项训练(基础知识二):10文学常识积累.pdf
2022高考二轮英语 晨读系列三 不可不会的考前积累 .pdf
在备考考研的过程中积累的珍贵资料,分享多种题材的考研英语二大小作文模板,附带详细套用方法,助您提升写作技能。简明实用。
堀之内克彦先生从事企业人事咨询工作二十余年,在解决用人问题方面积累了丰富的经验。针对新晋小团队主管经常会遇到的困惑和烦恼,他提出了大量实用的具体建议和方法,同时引入了一种能够帮助主管让下属人尽其才的...
二、数据来源 《 中国统计年鉴》、《中国能源统计年鉴》、《中国工业统计年鉴》、《中国环境统计年鉴》 、能源统计局、省级统计年鉴。 三、时间跨度 2010-2023年 四、数据范围 全国31个省市自治区(不含港澳台) 五...
小学生常用拟人句比喻句排比句夸张句.pdf
步骤二:双击打开test2.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描博客文章底部QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab...
免责声明:资料部分来源于合法的互联网渠道收集和整理,部分自己学习积累成果,供大家学习参考与交流。收取的费用仅用于收集和整理资料耗费时间的酬劳。 本人尊重原创作者或出版方,资料版权归原作者或出版方所有,...
关键字:2个带头结点单链表+提取公共元素+二表合一 思路 二表合一:采用**“归并”的思想,设置两个工作指针pa和pb,对两个链表进行归并扫描,只有同时出现在两集合中的元素才链接到结果表**中, 这里是新A表。并且...
**微信阅读小程序毕业设计源码及说明文档** 这份资源是一个完整的计算机专业毕业设计项目,主题为“微信阅读小程序...通过学习和实践,学生可以深入理解微信小程序的开发流程和技术要点,同时也能积累宝贵的项目经验。
进一步掌握所学习的软、硬件基础知识,探索开发设计方法、积累设计经验。 二、任务 设计一个能自动往返于起跑线与终点线之间的小汽车的控制系统。但不能用人工遥控(包括有线和无线)。跑道宽度0.5m,表面贴有...