关于js编程, 主要是, 绝大部分是用 jquery. 但是, js原生的一些方法和属性也是要掌握的, 这个只是在 遇到的时候, 记一下就好了, 如:

 event的relatedTarget属性: 主要就是针对 mouseout和 mouseover而言的, 返回跟这个事件 相关的 dom元素, mouseout会返回被 进入的dom元素, mouseover会返回被 离开的元素:$("p").mouseover(function(e){alert(e.relatedTarget.nodeName);  // 这个nameode就是js原生的属性名称
});

时间处理都是 使用 Date这个对象来进行的

参考文章:
http://www.w3school.com.cn/jsref/jsref_getYear.asp
http://zhidao.baidu.com/question/1511589589724354140.html?qbl=relate_question_0

http://www.68idc.cn/help/makewebs/javascript/20150809489876.html

Date , 单独的, 大写首字母 的话, 是一个对象; 小写的话, 放在一个单词的后面, 表示一个方法: getDate(): 获取一个月中的数字,1~31.

时间对象, 也不是 总是用 var date, 要根据你的 实际场合,和 语义意义, 来命名, 如: var exam_date = new Date(); var born = new Date(..);

Date对象的初始化:

  1. 总是使用 new Date([init-param]), 来创建 初始化一个 日期对象的, 如同 Array, Object等对象一样, 总是使用 "构造函数"来创建对象的.

  2. 构造函数由多个, 可以有多种初始化方式:
    • 不带初始化 参数的, 表示默认的用 当前的/现在的/代码执行时的时间(包括日期+时间)来初始化;
    • 用 时间戳变量或 时间戳 字面量(一个整数) 来初始化; 用 日期/时间 格式的参数来 初始化: ` var dateobj = new Date(123456); = new Date("2016-01-02 12:00:00");
    • 计算某个时间点/时间段的 年数:
  3. Date的属性和方法:
    Date的属性, 一般很少用: 包括

    • constructor, 这个属性, (提高效力是最重要的, 可以包括 汉字, pinyin, english, 再也不熬夜了10点必睡). 实际上是返回的构造函数的类型:Date var d = new Date(); if(d.constructor == Date) alert("...)

    • prototype: 原型, 感觉是对 一个类的 引用: prototype 应该是和 instance 相对应的, 由一个类 实例化 一个对象时, 叫instance, 而由一个对象如dateobject, 反推去 获得这个对象的类 的时候, 就是prototype, 用 a_class_object.prototype 获得的就是 the_class . suoyi, 用dateobject.prototype就获得了Date类, 然后就可以向这个类中 添加 方法和属性!

    • 现在, sihu 就可以明白$.prototype.extend的含义了: 原型的目的和作用, 是"用来扩展类的 属性和方法" 是指, 当我们在定义 一个类的时候, 可能没有事先定义这个类的 某些 方法和属性, 或者 你不能, 无法预见到这个类 应该有 哪些方法和属性, (有时候, 你也不能 总是 去修改 这个类 , 这个类已经投入使用了), 或者干脆就是 类的设计者 就赋予了 这个类 具有某种 扩展功能, 如 jQuery, jiu是这样, 你可以 通过jQuery.prototype 来获得jquery这个类, 然后你可以扩展 自己的 jquery方法和属性....

    • Date类的方法: 这个方法主要分为两类, 一类是获得时间/日期的函数, 一类是设置的函数, 主要是记住 获取 的函数就好了, 设置的值是改变成 set就号了..

      函数名 功能    
      getYear() 获取四位数的年份
      getMonth() 获取2位数的月数, 这个是从 0 开始的 , 注意 不是从1 开始的!!!
      getDate() 获取2位数的日 数, 也是从1 开始的
      getDay() 获取表示 星期的数字, 注意星期天返回的是0, ...
      getHours() 获取小时数...
      getMinites() ...
      getSeconds() ...
      **getTime() 获取dateobject 到 1970年 1月1日 0点0时0分 的毫秒数
      ** valueOf() 反过来,获取日期对象的毫秒数
      ** Date.parse() 反过来, 获取...毫秒数
      转换成字符串的函数 ...
      toString() 全部转变成 字符串...
      toDateString() 只转变日期字符串
      toTimeString() 只转变时间字符串
    • day和date的区别: 老美说, day是指的 星期几, date是指的几号, what's the day today? (the day是指发生重大事件的历史上的哪一天...) *** 图片本身要求顶格写, 但是图片的前面不能加空行, 否则会切断 前面的 排序 模式, 因为 顶格+ 空行 两个条件 一起满足的时候, 就打断前面的模式....***

  4. 使用function 来定义一个类? 这个函数 默认就可以作为 类的构造函数?

js 处理日期的例子:


这里如果用 getYear, 会返回 116年.. 因为, getYear是从1990年 开始算的, 所以 是 2016-1990 = 116 年, getYear明确的说被禁用了, 应该使用 getFullYear()....

要记住getMonth 跟 getDay一样, 也是从 0 开始的, 所以 getMonth的 月份数, 也要 +1, 加1.

** 没有ff的js调试器, 写js真的是一场噩梦, 很难找到 js的错误: 在定义 js的类的时候, 凡是 类中 的 属性和 成员方法, 的定义, 它是一个语句, 所以一定要在语句的后面, 加上分号; 否则会出错的! 下面的32行, 是定义 一个函数construct, (初始化构造函数),是一个语句, 所以 "并不是所有的 大括号后面都不加分号, 要看它是语句还是 结构. **
下面会报错: construct函数 没有定义:

所以在32行后面加上 分号, 就可以了:

????? 同样会报错: construct函数没有定义? 说明, 在js类的里面, 只要是 "私有"变量, 都可诶直接refer, 而公有变量, 不管是定义还是 调用/使用都要加this/

最后总结

关于用函数来定义一个类, 又是一个很长的话题: 参考这篇文章: http://www.cnblogs.com/lidabo/archive/2011/12/17/2291238.html, 讲得很好, 很透彻:

如文中所言, js不支持面向对象编程, 也没有class关键字, 没有继承extends或:, 没有虚拟函数virtual. 但是可以 实现/"模拟"类的使用和功能, 这个叫做: "伪类"
如何定义一个类, 没有关键字class, 用什么了?  **用function! **在js中, 总的类 根是 : Object, 而Function 是继承自 Object的, 而 function 函数是Function类的实例. 因此 在 js中, 是用 function 来定义一个类的. 你可以把 这个 "function" 关键字, 就看作是"class" 关键字. 或zhe把 function ...就看作是类的 构造函数.在"类"中, 私有的属性和方法, 使用 var来定义, (如同在函数中定义 变量一样, var 是函数内部的变量, 不写var则是全局变量, 这个跟 类的这个情况也是类似的), 全局属性和方法, 使用this来定义.**js类也可以有 构造函数. 外面的那个 function JsClass 应该看成是类名, 在类里面, 定义一个函数, init(...), 然后在类里面 调用一次这个init()方法. 这样, 在每一次 初始化一个类的对象时,就会自动去执行这个init方法, 可以把这个init方法就看成是类JsClass的构造函数, 也可以将它命名为 constructor, 里面就对 类的 私有变量 进行初始化 赋值.**类的静态方法和静态属性:  放在类定义的 外面, 使用 类名.属性名=...  类名.方法名=function()...., 类名.方法名(para1, para2...)= function(para1, para2...)..., 后面就用类名来引用静态方法和属性..类中的成员方法 要访问 类的自己的变量, 不像c/java等,可以直接访问, 这个 居然也分 "私有还是共有", 如果是私有成员属性, 直接写, 如果是公有属性, 加this...

这里明确的说到了: 用function来 代替class (等同于) 来定义一个类.

实例化一个类, 可以在类名前加上一个 a, 表示一个...

保留this到私有成员变量中: var _this=this;


喜欢 熟悉上js, php这样的动态语言了. js和php的函数原型 声明中会 "提示"变量的类型, 只是在函数原型的声明中, 实际在定义和调用/引用/reference时,都不会指定类型符. 动态语言, 灵活: 声明时灵活, 直接, 变量的类型是由 赋值 或 表达式 或context 来决定的; 而且可以自动实现 隐式 转换. js和php的编程基本上是相通的,一样的...


关于时间的处理和规定

时间的标准在各行各业很多, 在编程中用的较多的是 utc和gmt:
utc: universal time coordinated. (协调世界时 ), 是由 美国的 国际无线电咨询委员会规定并推荐的.
gmt, 也叫ut0. 也叫 世界时, utc是在 世界时的前面 加上"协调"
utc和gmt, 相差0.9s, 中间用 闰秒 来控制

关于日期和时间的 格式的 标准化表示:
日期和时间 可以用分隔符-和:, 也可以不用分隔符; 年用四位数字, 日月用两位数字,不足的补零; 时间用24小时制, 两位数字表示, 不足的补零
2014年2月3日: 2014-02-03, 20140203(不用斜线分隔, 可能是因为斜线 / 在系统中表示目录分隔符 或 其他系统表示意义, 在程序中不好处理的原因..?)
14点13分03秒: 14:13:03, 141303.

关于js中的时间处理相关推荐

  1. js中获取时间new date()的用法

    获取时间: var myDate = new Date();//获取系统当前时间 获取特定格式的时间: 1 myDate.getYear(); //获取当前年份(2位) 2 myDate.getFul ...

  2. js 中 的时间类和 setTimeout 和setInterval

    首先贴代码 <!DOCTYPE html> <html><head><meta charset="UTF-8"><title& ...

  3. js中获取时间new date()的用法和获取时间戳

    获取时间: 1 var myDate = new Date();//获取系统当前时间 获取特定格式的时间: 1 myDate.getYear(); //获取当前年份(2位)2 myDate.getFu ...

  4. js中获取时间new Date()详细介绍

    1.var myDate = new Date(); Date() 返回当日的日期和时间. getDate() 从 Date 对象返回一个月中的某一天 (1 ~ 31). getDay() 从 Dat ...

  5. 由echarts想到的js中的时间类型

    在工作中使用echarts时,偶然发现折线图中对时间类型变量的用法: now前面的+号何解? now = new Date(+now + oneDay); 后来查阅资料,看到一篇博客,解释如下:这是对 ...

  6. js 中使用 时间datetime 类型到前端iOS 不兼容问题

    需求和思路   需要重点是这个 结束时间 要展示倒记时.思路是用setTimeout()函数做. 遇到的问题 数据库传过来的日期类型在IOS 不能正确解析 代码 //倒计时函数 一秒钟执行一次 set ...

  7. js中的时间与毫秒数互相转换

    [1]js毫秒时间转换成日期时间var oldTime = (new Date("2012/12/25 20:11:11")).getTime(); //得到毫秒数 //不是上面格 ...

  8. js中比较时间字串大小

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. var start = Date.parse($("#str_atBeginDate&qu ...

  9. js中的时间与毫秒数互相转换,倒计时

    1.日期格式转换成毫秒数 var oldTime = (new Date("2017-03-22 11:11:11")).getTime(); //得到毫秒数 也可以支持  &qu ...

最新文章

  1. 字节跳动这项研究火了:基于残差UNet架构 ,一键分离伴奏和人声
  2. 使用MessageFormat格式化数字,日期
  3. js-移动端android浏览器中input框被软键盘遮住的问题解决方案
  4. C#通过DllImport引入dll中的C++非托管类
  5. 【JOURNAL】好久了啊
  6. iOS中WebKit框架应用与解析
  7. 时序图如何表现分支_静态时序分析圣经翻译计划——第五章:延迟计算 (上)...
  8. 【codevs1033】蚯蚓的游戏问题,费用流
  9. transition实现隐藏显示菜单栏效果
  10. 天线接口:SMA、TNC 有什么差别?
  11. python xlwt_【已解决】Python中使用xlwt设置cell的背景色
  12. svg中marker元素的理解
  13. Rasa中文聊天机器人开发指南(2):NLU篇
  14. 昆明最快dns服务器地址,手机网速最快的dns地址
  15. 韩国媒体:中国手机的崛起,都是依靠“性价比”?
  16. Java程序员学Golang
  17. 待机唤醒设置_网盘没落,NAS当道!不想NAS7*24待机,远程唤醒NAS很简单!
  18. java 爬虫框架 j_一个分布式java爬虫框架JLiteSpider
  19. 搭建企业级别nexus私服
  20. 阿里云域名购买与域名解析使用教程---(小白教程)

热门文章

  1. 如何打造规范的开源项目workflow
  2. 《乐高EV3机器人搭建与编程》——2.2 颜色设计
  3. java中new BigDecimal的坑
  4. 视频分享:编码与代码评审-质量与现实的最激烈冲突点(完整版)
  5. NET工程师求职面试必杀技
  6. layui与eazyui的区别_jquery easyui和layui的区别是什么?
  7. Kubernetes — 基于层级命名空间的多租户隔离
  8. Kubernetes — Overview
  9. 文件上传漏洞及解决办法
  10. c程序设计语言_习题1-9_将输入流复制到输出流,并将多个空格过滤成一个空格...