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. android SDK启动的错误

    1. AVD Manager.exe : failed to execute tools android.bat 请把AVD Manager.exe复制到跟 SDK Manager.exe的相同目录下 ...

  2. Android开发之计算器(一)界面设计之activity_main布局文件

    <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=&quo ...

  3. jquery hover事件冒泡解决方法

    $(this).hover(function(event){    $(this).addClass("cur");    event.stopPropagation();     ...

  4. SOAP 介绍

    简介 SOAP(Simple Object Access Protoco)简单对象访问协议是在分散或分布式的环境中交换信息的简单的协议,是一个基于 XML 的协议.此协议规范由 IBM.Microso ...

  5. SqlServer ,storedprocedure操作

    USE [Role] GO /*Create a table*/ IF OBJECT_ID ('dbo.Users', 'U') IS NOT NULL DROP TABLE Users GO CRE ...

  6. Microsoft Azure 全球状态

    除了mooncake的中国大陆区域 Azure status http://azure.microsoft.com/en-us/status/?rnd=1#current http://azure.m ...

  7. iOS学习笔记之typedef

    typedef unsigned long long weiboId; typedef 定义一个使用方便的类型,谓之为“宏定义“. unsigned long long 是一种无符号的长长整型.本应该 ...

  8. NAND的一些相关概念

    chipsize:整个NAND FLASH 的大小,单位为MB pagesize:一页的大小,单位为字节Byte erasesize:最小擦除大小,单位为字节Byte   NAND写操作基本单位是页, ...

  9. android 开发上传图片遇到返回 FileNotFoundException

    目的:带有参数上传图片 环境:客户端开发 android studio  ,服务器端:visual studio 2012 (c# asp.net) ************************* ...

  10. C#: Create a WebRequest with HTTPClient

    http://www.cnblogs.com/shanyou/archive/2012/03/21/2410739.html http://msdn.microsoft.com/zh-cn/libra ...