引用类型的值是引用类型的实例,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. SPOJ - PHRASES K - Relevant Phrases of Annihilation

    K - Relevant Phrases of Annihilation 题目大意:给你 n 个串,问你最长的在每个字符串中出现两次且不重叠的子串的长度. 思路:二分长度,然后将height分块,看是 ...

  2. mongo connect BI 连接至Power BI

    第一步:安装mongodb服务 官网地址:https://www.mongodb.com/download-center?jmp=nav#community mongodb的安装请参考:http:// ...

  3. 网易2019校招C++研发工程师笔试编程题

    丰收? (忘了题目了QAQ) 题目描述: 又到了丰收的季节,恰逢小易去牛牛的果园里游玩. 牛午常说他对整个果园的每个地方都了如指掌,小易不太相信, 所以他想考考牛牛. 在果园里有N堆苹果,每堆苹果的数 ...

  4. Spring.NET学习笔记1——控制反转(基础篇)

    在学习Spring.NET这个控制反转(IoC)和面向切面(AOP)的容器框架之前,我们先来看一下什么是控制反转(IoC). 控制反转(Inversion of Control,英文缩写为IoC),也 ...

  5. scrapy 安装出错 [err2] no such file or directory: 'README.rst'【已解决】

    背景:pip安装一直不成功,很多模块用pip安装都不行,只好到github下载zip安装 c:\Document and settings\> python e:\scrapy-0.24\set ...

  6. Poj2482 Stars in Your Window(扫描线)

    题面 Poj 题解 下面内容引用自"李煜东 <算法竞赛进阶指南>"(对原文略有缩减,侵删): 因为矩形的大小固定,所以矩形可以由它的任意一个顶点唯一确定.我们可以考虑把 ...

  7. Sqli-labs less 3

    Less-3 我们使用?id=' 注入代码后,我们得到像这样的一个错误: MySQL server version for the right syntax to use near "&qu ...

  8. Android异步消息处理机制(多线程)

    当我们需要执行一些耗时操作,比如说发起一条网络请求时,考虑到网速等其他原因,服务器未必会立刻响应我们的请求,如果不将这类操作放在子线程里去执行,就会导致主线程被阻塞住,从而影响用户对软件的正常使用. ...

  9. Spring 概念详解

    一.Spring的IoC(Inversion of Control). 这是Spring中得有特点的一部份.IoC又被翻译成“控制反转”,也不知道是谁翻译得这么别扭,感觉很深奥的词.其实,原理很简单, ...

  10. BZOJ 2789 letters(树状数组)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=2789 [题目大意] 给出两个字符串,通过A字符串相邻之间字符的交换得到B字符串, 求最 ...