引用类型的值是引用类型的实例,js中的引用类型是一种数据类型,用于将数据和功能组织在一起(也可叫对象定义,因为描述一类对象具有的属性和方法)


1、Object类型

大多数引用类型都是object类型,创建object类型实例可以new,也可以字面量表示(简化创建包含大量属性的对象)

       //创建对象
var obj1=new Object(); //new操作符
var obj2={} //也是创建对象
var obj3={ //字面量表示,分号和逗号
name:"double",
age:20,
sex:"man"
}

字面量方法也可以向函数传递大量可选参数,比如

       function displayInfo(argu){
var output=""
if(typeof argu.name=="string"){
output+="Name "+argu.name+"\n";
}
if(typeof argu.age=="number"){
output+="Age "+argu.age+"\n"
}
console.log(output)
}
displayInfo({
name:"double",
age:20
})
displayInfo({
name:"single"
})
//这种传参数模式适合需要向函数传入大量可选参数的情形

[]和点号大多时候可以互换

       var personName="name"           //[]可以通过变量访问属性,还有属性名非字母非数字情况
alert(person[personName]) person["first name"]="double"

2、Date类型

创建Date实例,在不传递参数情况下是自动获得当前的时间和日期的。创建特定的日期和时间则必须传入表示该日期的毫秒数,js提供两个方法Date.parse()和Date.UTC()

ES5添加新的方法Date.new()

    Date.prototype.myMet=function(){        //为Date添加一个原型属性
if(this.getMonth()==0){
this.myPrope="january"
}
if(this.getMonth()==1){
this.myPrope="Febrary"
}
if(this.getMonth()==11){
this.myPrope="December"
}
}
var mydate=new Date()
mydate.myMet() //调用该方法
var monthName=mydate.myPrope //创建一个新对象
console.log(monthName) var start=Date.now()
console.log(start) //返回调用该方法时的日期和时间的毫秒数 console.log(now.toDateString()) //年月日
console.log(now.toTimeString()) //时分秒
console.log(now.toLocaleDateString()) //本地化年月日
console.log(now.toLocaleTimeString()) //本地化时分秒
console.log(now.toUTCString()) //完整的UTC日期 //日期组件化的方法
var date=new Date()
console.log(date.getFullYear()) //获得年月日星期时分秒 毫秒
console.log(date.getMonth()) 0表示一月,11表示12月
console.log(date.getDate())
console.log(date.getDay()) 0表示星期日,6表示星期六
console.log(date.getHours())
console.log(date.getMinutes())
console.log(date.getSeconds())
console.log(date.getMilliseconds())
console.log(date.getTime()) //整个日期的毫秒数 //设置日期
var newdate=new Date()
newdate.setFullYear(2019)
newdate.setMonth(0) //0——11表示月,多出则增加年
newdate.setDate(0) //0表示上个月的最后一天;-1时上个月的倒数第二天
newdate.setDate(newdate.getDate()+5) //设置日期对象的后五天
console.log(newdate)

关于日期的实例

一个简单的时间同步

   window.onload=function(){
change()
} function checktime(i){ //判断时间的是否为个位数时
if(i<10){
i="0"+i
}
return i
} function change(){
var demo=document.getElementById("demo")
var date=new Date()
var year=date.getFullYear()
var month=date.getMonth()+1
var dates=date.getDate()
var day=date.getDay()
var hour=date.getHours()
var minute=date.getMinutes()
var second=date.getSeconds() hour=checktime(hour)
minute=checktime(minute)
second=checktime(second) var weekday=new Array(7) //利用数组来卡星期
weekday[0]="星期日"
weekday[1]="星期一"
weekday[2]="星期二"
weekday[3]="星期三"
weekday[4]="星期四"
weekday[5]="星期五"
weekday[6]="星期六" demo.innerHTML=year+"年"+month+"月"+dates+"日"+weekday[day]+hour+":"+minute+":"+second
}
setInterval(change,1000)

引用类型之object和date详解的更多相关文章

  1. Oracle date 详解

    oracle 数据类型详解---日期型 oracle数据类型看起来非常简单,但用起来会发现有许多知识点,本文是我对ORACLE日期数据类型的一些整理,都是开发入门资料,与大家分享:注:由于INTERV ...

  2. 0426JavaSE01day02.txt=========正则、Object、包装类详解

    正则表达式 基本正则表达式:正则表达式简介.分组(). "^"和"$" String正则API:matches方法.split方法.replaceAll方法 O ...

  3. String.format(String format, Object... args)方法详解

    很多次见到同事使用这个方法,同时看到https://blog.csdn.net/qq_27298687/article/details/68921934这位仁兄写的非常仔细,我也记录一下,好加深印象. ...

  4. JS日期Date详解与实例扩展

    一:Date类型介绍 要创建一个日期对象,使用new操作符和Date构造函数即可: var now = new Date(); Date.parse()方法 其中Date.parse()方法接收一个表 ...

  5. 11-02 Java Object类使用详解

     Object 作为超类 Object是类层次结构的根类,所有的类都直接或者间接的继承自Object类. Object类的构造方法有一个,并且是无参构造,这其实就是理解当时我们说过,子类构造方法默认访 ...

  6. iOS--时间类date详解

    NSDate定义时间的类 NSDate是一个时间类,在编写程序时,我们很少遇到.今天我突然碰到,感觉很生疏. 给大家发个博客,让大家也都温习一下,哈哈! 兄弟用的时候突然发现竟然有一些bug,大家用时 ...

  7. JavaScript 中的Object的使用详解笔记(一)

    昨天的学习笔记,今天更新上.第三遍看oop,还是理解的比较到位了.   1.JavaScript的组成:ECMAScript(最新6) + DOM + BOM 2.数组与对象的应用: object的基 ...

  8. js new date详解

    创建一个日期对象: var objDate=new Date([arguments list]); var ini_date=new Date(2014,7,0); //是代表7月最后一天 ,也就是2 ...

  9. C#语言中的XmlSerializer类的XmlSerializer.Serialize(Stream,Object)方法举例详解

    在对象和 XML 文档之间进行序列化和反序列化操作. XmlSerializer 使您能够控制如何将对象编码为 XML. 命名空间:   System.Xml.Serialization程序集:  S ...

随机推荐

  1. Loadrunner脚本读取 XMl 文件

    Loadrunner脚本读取 XMl 文件 性能测试工程师要懂代码么?答案是必须的,好多测试员认为在 loadrunner 中编写脚本很难很牛 X . 好多人认为 loadrunner 只支持 C 语 ...

  2. 初始pip

    关于pip包括下面的东西还不是很懂,慢慢的了解,我的pip是从https://bootstrap.pypa.io/get-pip.py 粘贴并命名为 get-pip.py 后,执行 python ge ...

  3. Python3 文件读写注意事项(指针问题)

    C:\Users\Administrator\AppData\Local\Programs\Python\Python35\python.exe E:/python/day2/op.py Someho ...

  4. Spring的消息 Java Message Service (JMS)

     Spring有两种方法提供对EJB的支持: Spring能让你在Spring的配置文件里,把EJB作为Bean来声明.这样,把EJB引用置入到其他Bean的属性里就成为可能了,好像EJB就是另一个P ...

  5. Friends number NBUT - 1223 (暴力打表)

    Paula and Tai are couple. There are many stories between them. The day Paula left by airplane, Tai s ...

  6. JavaScript的程序构成

    JavaScript的程序构成主要从以下几方面做个总结:控制语句.函数 .事件驱动及事件处理,希望对读者有些帮助. 控制语句: if条件语句 基本格式 if(表述式) 语句段1: ...... els ...

  7. 【二分答案】【最大流】[HNOI2007]紧急疏散EVACUATE

    [HNOI2007]紧急疏散EVACUATE 题目描述 发生了火警,所有人员需要紧急疏散!假设每个房间是一个N M的矩形区域.每个格子如果是'.',那么表示这是一块空地:如果是'X',那么表示这是一面 ...

  8. 【强连通分量缩点】【DFS】【动态规划】Urozero Autumn Training Camp 2016 Day 5: NWERC-2016 Problem B. British Menu

    有向图,不经过重复点的最长链,强连通分量大小不超过5. 每个强连通分量内部暴力预处理任意两对点之间的最长路,外面DAG上dp. 不是很好写,但是预处理完了之后,可以重构每个强连通分量内部的结构,然后整 ...

  9. 【最短路】【spfa】CDOJ1633 去年春恨却来时,落花人独立,微雨燕双飞

    对于S集合中的数,例如a1,考虑到如果x能够被表示出来,那么x+a1也一定能被表示出来 设d[r]为所有模a1余r的数中,能被表示出来的最小的数 用d[x]+ai去更新d[(x+ai)%a1],跑最短 ...

  10. Problem F: 加密程序2

    #include<stdio.h> int main() { int i; ]; while(gets(a)!=NULL) { ;a[i]!='\0';i++) if('A'<=a[ ...