1: 过滤首尾空格trim、2:过滤左边空格ltrim    3:过滤右边空格 

 
一:用正则方法写成三个函数.
<script type="text/javascript">
function trim(str){ //删除左右两端的空格
  return str.replace(/(^\s*)|(\s*$)/g, "");
}
function ltrim(str){ //删除左边的空格
  return str.replace(/(^\s*)/g,"");
}
function rtrim(str){ //删除右边的空格
  return str.replace(/(\s*$)/g,"");
}
</script>

二:获取鼠标在页面上的位置, 获取元素的绝对left和绝对right

  var
_mousepos = {//鼠标在页面上的位置
"top":0,
"left":0
}, getMousePoint = function (_e) {
var _body = document.body,
_left = 0,
_top = 0
;
//浏览器支持 pageYOffset, 那么可以使用pageXOffset 和 pageYOffset 获取页面和视窗之间的距离
if(typeof window.pageYOffset != 'undefined') {
_left = window.pageXOffset;
_top = window.pageYOffset;
}
//如果浏览器指定了DOCTYPE并且支持compatMode
else if(typeof document.compatMode != 'undefined' && document.compatMode != 'BackCompat') {
_left = document.documentElement.scrollLeft;
_top = document.documentElement.scrollTop;
}
else if(typeof _body != 'undefined') {//其他的如果浏览器支持document.body
_left = _body.scrollLeft;
_top = _body.scrollTop;
} _left += _e.clientX;
_top += _e.clientY;
_mousepos.left = _left;
_mousepos.top = _top; return _mousepos;
}, getAbsoluteLeft = function (_e){//获取元素的绝对left
var _left = _e.offsetLeft,
_current = _e.offsetParent;
while (_current !== null){
_left += _current.offsetLeft;
_current = _current.offsetParent;
}
return _left;
}, getAbsoluteTop = function (_e){//获取元素的绝对top
var _top = _e.offsetTop,
_current = _e.offsetParent;
while (_current !== null){
_top += _current.offsetTop;
_current = _current.offsetParent;
}
return _top;
},

3.获取日期的指定部分

/*获取日期的指定部分*/
var d =new Date(); //获取日期对象
console.log(d.getFullYear() + "年");//获取年
console.log((d.getMonth() + 1) + "月");//获取月函数默认是0~11 所以要+1
console.log(d.getDate() + "日");//获取日
console.log(d.getHours() + "时");//获取时
console.log(d.getMinutes() + "分");//获取分
console.log(d.getSeconds() + "秒");//获取秒

4.显示当前日期

//获取当前时间
function getNowTime(){
var date =new Date();//获取日期对象 /*获取年、月、日、时、分、秒,本地系统的时间*/
return date.getFullYear() + "年"
+ (date.getMonth() + 1) + "月"
+ date.getDate() + "日"
+ " "
+ date.getHours() + "时"
+ date.getMinutes() + "分"
+ date.getSeconds() + "秒";
}
//显示当前时间
document.getElementById("nowTime").innerHTML = "时间:" + getNowTime();

5.日期格式化成字符串

<body>
<h2>日期格式化成字符串</h2>
<p id='formatTime1'>格式化日期1:</p>
<p id='formatTime2'>格式化日期2:</p>
<p id='formatTime3'>格式化日期3:</p>
<script type="text/javascript">
window.onload = function(){
//日期格式化成字符串
function dateFormat(){
Date.prototype.format = function(f){
var date = {//获取对象中的日期
"Y" : this.getFullYear(),//获取年
"M" : (this.getMonth() + 1),//获取月
"D" : this.getDate(),//获取日
"h" : this.getHours(),//获取小时
"m" : this.getMinutes(),//获取分钟
"s" : this.getSeconds()//获取秒
},
d = "",//初始化接受日期变量的对象
r = false,//判断是否存在待替换的字符
reg = null,//正则
_d = "";//日期
; for(d in date){//过滤日期标示符
reg = new RegExp("[" + d + "]{1,}", "g");//判断是否有待格式化的字符
r = reg.test(f); if(r)//验证是否存在
{
_d = date[d];//被替换的日期
f = f.replace(reg, _d < 10 ? ("0" + _d) : _d);
}
} return f;
}
} var d =new Date();//获取日期对象 /*待格式化的日期为当前日期,
字符格式替换规则:“Y”被替换为年,“M”替换为,“D”替换为日期,“h”替换为小时,“m”替换为分钟,“s”替换为秒
* */
dateFormat();
document.getElementById("formatTime1").innerHTML = "格式化日期1:" + d.format("YYYY-MM-DD h:m:s");
document.getElementById("formatTime2").innerHTML = "格式化日期2:" + d.format("YYYY/MM/DD h-m-s");
document.getElementById("formatTime3").innerHTML = "格式化日期3:" + d.format("Y:M:D h:m:s");
};
</script>
</body>

超实用js代码段一的更多相关文章

  1. 超实用 JS 代码段笔记(一)

    序1:30段简单代码段(有删减) 1 . 区分 IE 和 非 IE 浏览器 if(!+[1,]){ console.log('ie浏览器'); }else{ console.log('非ie浏览器') ...

  2. 我们为什么要看《超实用的Node.JS代码段》

    不知道自己Node.JS水平如何?看这张图 如果一半以上的你都不会,必须看这本书,一线工程师用代码和功能页面来告诉你每一个技巧点. 都会一点,但不知道如何检验自己,看看本书提供的面试题: 1.     ...

  3. 《超实用的Node.js代码段》连载三:Node.js深受欢迎的六大原因

    <超实用的Node.js代码段>连载一:获取Buffer对象字节长度 <超实用的Node.js代码段>连载二:正确拼接Buffer Node.js是一种后起的优秀服务器编程语言 ...

  4. 实用的JS代码段(表单篇)

    整理了下比较实用的Javascript代码段,完整的代码参考 1 多个window.onload方法 由于onload方法时在页面加载完成后,自动调用的.因此被广泛的使用,但是弊端是只能实用onloa ...

  5. 《超实用的Node.js代码段》连载二:正确拼接Buffer

    对于初学Node.js框架的开发人员来说,可能认为Buffer模块比较易学.重要性也不是那么突出.其实,Buffer模块在文件I/O和网络I/O中应用非常广泛,其处理二进制的性能比普通字符串性能要高出 ...

  6. 《超实用的Node.js代码段》连载一:获取Buffer对象字节长度

    我们知道Node.js框架下的Buffer对象能够对二进制数据提供很好的支持,那么获取一个Buffer对象真实的字节长度则是必须要用到的功能了.Node.js框架为开发人员提供了一个Buffer.by ...

  7. JS代码段:返回yyyy-mm-dd hh:mm:ss

    最近做项目的时候正好用到,本着能抄就抄的心态去百度搜索现成的代码, 没想到抄下来的好几个都是错的,要么getMonth没有加1,要么10以下的数字前面没有加0, 我真是日了狗了,这次把写好的正确的直接 ...

  8. 验证表单的js代码段

     JS常用功能 转载自:http://blog.csdn.net/kalision/article/details/12516103 引用js文件: <script src="js/d ...

  9. 实际项目中积累的一些关于事件的简单应用JS代码段(能力有限,不喜轻喷,23333)

    1:鼠标移入移出显示另一张图片 var yuanquan_1 = document.getElementById("yuanquan_1" );  yuanquan_1. onmo ...

随机推荐

  1. xml_editor

    概要 该工程是用来操作xml, 目的是为了在程序中操作xml中各类节点更加简单, 下面按照 工程简介, 库内部实现, 库接口使用, xml工具使用, xpath简介 几个部分来介绍该c++库. 工程简 ...

  2. Entity Framework 并发处理借鉴

    如下博客 http://www.cnblogs.com/Bce-/p/3725868.html

  3. 节点属性(DOM对象)

    节点属性 在文档对象模型 (DOM) 中,每个节点都是一个对象.DOM 节点有三个重要的属性 : 1. nodeName : 节点的名称 2. nodeValue :节点的值 3. nodeType ...

  4. OSM 中国数据(每天都在更新)

    http://download.geofabrik.de/asia/china.html

  5. Bash 快捷键

     生活在 Bash shell 中,熟记以下快捷键,将极大的提高你的命令行操作效率. 编辑命令 Ctrl + a :移到命令行首 Ctrl + e :移到命令行尾 Ctrl + f :按字符前移(右向 ...

  6. 项目文件包含 ToolsVersion="12.0" 设置,而此版本的 MSBuild 不支持该工具版本

    解决方法: 右键点击你的项目,选择属性,再点击配置属性中的常规,常规中有个平台工作集,把V120改成V100,点击应用即可.

  7. plateform_driver_register和plateform_device_register区别

    设备与驱动的两种绑定方式:在设备注册时进行绑定及在驱动注册时进行绑定. 以一个USB设备为例,有两种情形: (1)先插上USB设备并挂到总线中,然后在安装USB驱动程序过程中从总线上遍历各个设备,看驱 ...

  8. mysql卸载

    先执行mysql安装程序,点击移除,然后再删除对应的安装路径,必要的时候还要删除注册表信息.

  9. Ha ha lou!

    忙了一个晚上,终于稍微把这个模板修缮好了一点=-=//,然而我并不知道怎么像别的大牛一样,博客跟自己做的页面一样.总之今天就先到这里啦! 我的QQ是270115270,不知道会不会有人来呢=-=. ( ...

  10. NOSQL的应用,Redis/Mongo

    NOSQL的应用,Redis/Mongo 1.心路历程 上年11月份来公司了,和另外一个同事一起,做了公司一个移动项目的微信公众号,然后为了推广微信公众号,策划那边需要我们做一些活动,包括抽奖,投票. ...