`

常用的js,字符截取,时间转换

阅读更多
/**
 * 字符串长度截取
 * @param str
 * @param length  要截取的长度
 * @return
 */
function getSubString(str,length){
    var subStr ="";
    if(str.length > length){
    	subStr = str.substring(0,length)+"...";
      }else{
    	subStr= str;
    }
     return subStr;     
 }
/**
 * 控制文章的显示,以中文为基础
 * s 待处理的字符串
 * l 截取的长度
 * d 是否出现“...”,默认出现
 */
function subStr(s,l,d){
	if(s == undefined){
		return "";
	}
	s=s.replaceAll(" ","|");
	l=l*2;
	var r = /[^\x00-\xff]/g;
	if(s.replace(r, "zz").length <= l){
		return s.replaceAll("\\|","&nbsp;");    	
	} 
	var m = Math.floor(l/2);
	for(var i=m; i<s.length; i++){
		if(s.substring(0, i).replace(r, "zz").length>=l) {
			var str=s.substring(0, i).replaceAll("\\|","&nbsp;");
			if(d==undefined){
				return  str+"...";
			}else{
				return str;
			}
		} 
	}
	return s.replaceAll("\\|","&nbsp;");
}
/**
 * jquery去除字符串中的html
 * 示例:
 * 	var a="<b>abc</b>";
 * 	$.removeHtml(a);
 * 结果:abc
 */
jQuery.removeHtml = function(s){
	return (s)? jQuery("<p>").append(s).text(): "";
}
/**
 * 替换html代码的中的'<''>'等转换
 * 使用:
 * $.escapeHtml("<b></b>");
 */
jQuery.escapeHtml=function(s){
	return (s)? jQuery("<p>").text(s).html(): "";
}
/**
 * 文本内容提交之前做处理
 * @param s
 * @return
 */
function contentSubmitBefore(s){
	return (s)?s.replaceAll("\r\n","<br>").replaceAll("\n","<br>").replaceAll("\r","<br>"):"";
}
/**
 * 文本显示之前处理
 * @param s
 * @return
 */
function contentSubmitAfter(s){
	return (s)?s.replaceAll("<","&lt;").replaceAll(">","&gt;").replaceAll("&lt;br&gt;","<br/>").replaceAll("&lt;br/&gt;","<br/>"):"";
}
/**
 * 替换html标签 
 * @param s
 * @return
 */
function htmlTagReplace(s){
	return (s)?s.replaceAll("<","&lt;").replaceAll(">","&gt;"):"";
}

/**
 * 将timestamp以 yy-mm-dd : mm:ss 格式返回
 * @param timestamp
 * @return
 */
function getDate(timestamp,type){
   var timeCreated = new Date(timestamp);
   if(type == undefined){
		//yy-mm-dd : hh:mm
var timeFormated = timeCreated.getFullYear() +"-" + (timeCreated.getMonth()+1) +"-"+timeCreated.getDate() +" " +timeCreated.getHours()+":" + timeCreated.getMinutes() ;
    return timeFormated;
    }if(type == 1){
//yy-mm-dd : hh:mm
var timeFormated = timeCreated.getFullYear() +"-" + (timeCreated.getMonth()+1) +"-"
		 +timeCreated.getDate() +" " +timeCreated.getHours()+":" + timeCreated.getMinutes() ;
}else if(type == 2){
		//yy-mm-dd : hh:mm:ss
		var timeFormated = timeCreated.getFullYear() +"-" +(timeCreated.getMonth()+1) +"-"
		 +timeCreated.getDate() +" " +timeCreated.getHours()+":" + timeCreated.getMinutes() 
		+":"+timeCreated.getSeconds();
}else if( type == 3){
		//yy-mm-dd
		var timeFormated = timeCreated.getFullYear() +"-" + (timeCreated.getMonth()+1) +"-"
		 +timeCreated.getDate();
}
return timeFormated;
}
/**
 * 计算传入时间和当前时间差
 * @param d 时间 格式:2010-04-10 10:22:36
 * @return
 */
function getDateDiff(d,now){
	if(now==undefined){
		now=new Date().getTime();
	}else{
		now=Date.parse(now.replace(/-/g,'/').replace(/:/g,":"));
	}
	var diffValue = now - Date.parse(d.replace(/-/g,'/').replace(/:/g,":"));
	if(diffValue < 0){     
		return "刚刚";    
	}   
	var minute = 1000 * 60;  
	var hour = minute * 60;  
	var day = hour * 24; 
	var halfamonth = day * 15; 
	var month = day * 30; 
	var monthC =diffValue/month;   
	var weekC =diffValue/(7*day);   
	var dayC =diffValue/day;   
	var hourC =diffValue/hour;  
	var minC =diffValue/minute;       
	if(monthC>=1){    
		result=parseInt(monthC) + "个月前";    
	}else if(weekC>=1){
		result=parseInt(weekC) + "个星期前";    
	}else if(dayC>=1){    
		result= parseInt(dayC) +"天前";    
	}else if(hourC>=1){    
		result= parseInt(hourC) +"个小时前";   
	}else if(minC>=1){    
		result= parseInt(minC) +"分钟前";    
	}else{
		result="刚刚";    
	} 
	return result;  
}
/**  
 *转换日期对象为日期字符串  
 * @param date 日期对象  
 * @param isFull 是否为完整的日期数据,  
 *               为true时, 格式如"2000-03-05 01:05:04"  
 *               为false时, 格式如 "2000-03-05"  
 * @return 符合要求的日期字符串  
 */  
function getSmpFormatDate(date,isFull){   
    var pattern = "";   
    if (isFull==true||isFull==undefined) {   
        pattern = "yyyy-MM-dd hh:mm:ss";   
    } else {   
        pattern = "yyyy-MM-dd";   
    }   
    return getFormatDate(date,pattern);   
} 
/**  
 *转换当前日期对象为日期字符串  
 * @param date 日期对象  
 * @param isFull 是否为完整的日期数据,  
 *               为true时, 格式如"2000-03-05 01:05:04"  
 *               为false时, 格式如 "2000-03-05"  
 * @return 符合要求的日期字符串  
 */  
function getSmpFormatNowDate(isFull){   
    return getSmpFormatDate(new Date(),isFull);   
}
/**  
 *转换long值为日期字符串  
 * @param l long值  
 * @param isFull 是否为完整的日期数据,  
 *               为true时, 格式如"2000-03-05 01:05:04"  
 *               为false时, 格式如 "2000-03-05"  
 * @return 符合要求的日期字符串  
 */  
function getSmpFormatDateByLong(l,isFull){   
    return getSmpFormatDate(new Date(l),isFull);   
}  
/**  
 *转换long值为日期字符串  
 * @param l long值  
 * @param pattern 格式字符串,例如:yyyy-MM-dd hh:mm:ss  
 * @return 符合要求的日期字符串  
 */  
function getFormatDateByLong(l,pattern){   
    return getFormatDate(new Date(l),pattern);   
}
/**  
 *转换日期对象为日期字符串  
 * @param l long值  
 * @param pattern 格式字符串,例如:yyyy-MM-dd hh:mm:ss  
 * @return 符合要求的日期字符串  
 */  
function getFormatDate(date,pattern){   
    if(date==undefined){   
        date=new Date();   
    }   
    if(pattern==undefined){   
        pattern="yyyy-MM-dd hh:mm:ss";   
    }   
    return date.format(pattern);   
} 
/**
 * 计算还可以输入的字数
 * max 最大字数
 * fun 回调方法
 * type 如果type不传递以英文为基础,type=1则以中文为基础
 * 调用如下:
 *  $('input').woyoObserver(100,function(num,val){
		$('#result1').text('数量: '+ num);
		$('#result2').text('内容: '+ val);
	});
 */
jQuery.fn.woyoObserver=function(max,fun,type){
	$(this).delayedObserver(function(){
		 var _this=$(this);
		 if(type==1){
			var _r = /[^\x00-\xff]/g;
			var _s=$.trim(_this.val());
			var _m=_s.replace(_r, "zz").length;
			fun(max-Math.floor(_m/2),_this.val(),this);
		 }else{
			fun(max-$.trim(_this.val()).length,_this.val(),this);
		 }
	},0.0001);
}
/**
 * 获取星期
 * @param date 时间戳
 * @return
 */
function getDayOfWeek(date){
    var today = new Array("周日","周一","周二","周三","周四","周五","周六");
    return today[new Date(date).getDay()];
}
/**
 * 格式化开始时间和接受时间,例如: 跨天:7月1日 周四 09:00- 7月30日 周五 17:00 不跨天: 7月30日 周五 21:00 - 23:55
 * @param start 开始时间戳
 * @param end 结束时间戳
 * @return
 */
function formatStartEndDate(start,end){
	if(end<start){return "时间错误";}
	var c=end-start;
	var minute = 1000 * 60;  
	var hour = minute * 60;  
	var day = hour * 24; 
	if(parseInt(c/day)<=0){
		var d=new Date(start).format("MM月dd日");
		var week=getDayOfWeek(start);
		var t1=new Date(start).format("hh:mm");
		var t2=new Date(end).format("hh:mm");
		return d+" "+week;
	}else{
		var d1=new Date(start).format("MM月dd日");
		var d2=new Date(end).format("MM月dd日");
		var w1=getDayOfWeek(start);
		var w2=getDayOfWeek(end);
		var t1=new Date(start).format("hh:mm");
		var t2=new Date(end).format("hh:mm");
		return d1+" "+w1+" - "+d2+" "+w2;
	}
}
补struts中的标签显示时间的
<s:property value="gmtCreatedString.substring(0,16)"/>,从哪里开始显示
分享到:
评论

相关推荐

    Js获取当前日期时间及格式化代码

    描述中的知识点:介绍了如何使用JavaScript(Js)获取当前的日期和时间,并提供了一个格式化日期时间的代码示例。 标签中的知识点:涉及到Js在获取日期时间方面相关的几个关键功能和方法,包括获取年份、月份、日、...

    JavaScript 类似微信历史聊天时间样式

    在提供的代码中,`initTime` 和 `initTimeN` 函数用于将后台传递的日期时间字符串(如“2018080815153600”)转换为更易读的格式:“2018/08/08 15:15:10”或“2018/08/08”。这里,我们使用了字符串的 `substring` ...

    JavaScript字符串函数大全

    根据提供的文件信息,这里将详细解释与JavaScript字符串相关的函数,并补充一些缺失或不清晰的部分,以便更好地理解每个函数的功能及用法。 ### JavaScript字符串函数大全 #### 1. Asc(x) - **功能**:返回字符的...

    常用javascript案例大全

    Web 开发中的脚本语言,下面是常用的 JavaScript 案例大全,包括原生 JavaScript 实现字符串长度截取、获取域名主机、清除空格、替换全部、转义 HTML 标签、还原 HTML 标签、时间日期格式转换等技巧。 1. 原生 ...

    JS常用函数方法收集1

    cutstr.js 字符串长度截取 replaceAll.js 替换全部 trim.js 清除空格 startWith.js 判断是否以某个字符串开头 endWith.js 判断是否以某个字符串结束 HtmlEncode.js 转义html标签 dateFormat.js 时间日期格式转换 ...

    js 时间格式与时间戳的相互转换示例代码

    在这个函数中,除了进行时间戳到Date对象的转换外,还额外使用了substr方法截取了字符串的前16个字符,以得到不包含秒数的时间格式。 这些示例代码能够帮助新手朋友们理解在JavaScript中如何处理时间与时间戳的转换...

    js获取时间并实现字符串和时间戳之间的转换

    本文将详细讲解如何使用JavaScript获取当前时间,并实现字符串和时间戳之间的转换。 首先,我们可以通过创建一个新的`Date`对象来获取当前时间。例如: ```javascript var myDate = new Date(); ``` `myDate`现在...

    常用javascript语句大全

    ### 常用JavaScript语句详解 #### 1. `document.write("")` 输出语句 在JavaScript中,`document.write()` 方法用于将指定的内容写入正在加载的文档中。这通常用于动态创建网页内容。 #### 2. JS中的注释为`//` 在...

    常用JS大全常用JS大全

    ### 常用JS大全知识点解析 #### 一、文档对象模型(DOM)与文档流 **1. 文档写入:** `document.write("");` 文档写入方法允许在文档流中写入文本、HTML 或 JavaScript 代码。通常用于在页面加载时或脚本执行...

    javascript之字符串常用的属性和方法.pdf

    - `toLocaleString()`:根据本地时间格式将日期对象转换为字符串。 - `valueOf()`:返回字符串的原始值。 - `trim()`:删除字符串两端的空白字符。 - `startsWith(substring)`:检查字符串是否以指定子字符串...

    js获取时间 的时分秒出现NaN

    在给定的代码片段中,我们可以看到一个简单的日期时间处理逻辑,主要目的是将一个字符串形式的时间转换为`Date`对象,并从中提取出小时、分钟和秒数。但是,在实际运行过程中遇到了问题——获取到的时间元素为`NaN`...

    常用javascript小技巧

    ### 常用JavaScript小技巧详解 在前端开发领域,JavaScript是不可或缺的编程语言,它提供了丰富的功能和灵活的语法,让开发者能够构建交互式的网页应用。以下是对给定文件中提到的一些常用JavaScript小技巧的深入...

    常用Javascript语句109

    综上所述,《常用Javascript语句109》不仅涵盖了JavaScript的基本语法和核心概念,还深入探讨了DOM操作、数据类型转换、控制流、函数设计、表单交互、窗口管理、字符串与数学处理、以及日期时间操作等关键领域,是...

    js截取字符串功能的实现方法

    本文详细介绍了两种在JavaScript中截取字符串的常用方法:substring()和slice()。为了更好地说明这两种方法的用法和区别,本文通过一个时间字符串的示例来展现它们的应用。 ### substring()方法 substring()方法...

    JS计算两个时间相差分钟数的方法示例

    这里使用`substr`方法截取小时和分钟的字符串,然后转换为整数。小时数乘以60得到小时对应的分钟数。这样,`min1`和`min2`分别代表`time1`和`time2`的时间部分以分钟表示。 接着,我们将日期部分的分钟差`m`与时间...

    108个常用JS脚本

    - 字符串截取:`substring()`方法用于获取字符串中的一部分。 34. **数学操作**: - `Math.PI`用于表示圆周率π。 - `Math.SQRT2`表示2的平方根。 - `Math.max()`函数用于找出一组数值中的最大值。 - `Math....

    javascript常用整理

    39. **截取字符串**: `stringA.substring(2, 6)` 截取字符串 `stringA` 从索引 2 开始到索引 5 的子串。 40. **数学函数**: JavaScript 提供了一系列内置的数学函数,如 `Math.PI` 表示圆周率 π、`Math.SQRT2` 表示...

    107个常用javascript语句

    在深入探讨这107个常用的JavaScript语句之前,我们先来理解JavaScript作为一种广泛使用的脚本语言,在Web开发中的核心地位。JavaScript不仅能够为网页添加交互性,还能够处理用户输入、操作页面文档对象模型(DOM)...

    100个直接可以拿来用的JavaScript实用功能代码片段(1-10)

    85、原生JavaScript字符串反序 86、原生JavaScript用正则表达式清除html代码中的脚本 87、原生JavaScript动态执行JavaScript脚本 88、原生JavaScript动态执行VBScript脚本 89、原生JavaScript实现金额大写转换函数 ...

    107个常用Javascript语句

    从索引2开始到索引6结束(不包括6),截取字符串`stringA`的子串。 ### 40. 数学函数:`Math.PI`, `Math.SQRT2`, `Math.max(value1, value2)`, `Math.pow(value1, 10)`, `Math.round(value1)`, `Math.floor(Math....

Global site tag (gtag.js) - Google Analytics