day07对象及日期定时器

日期

日期对象的定义(使用new关键词)

获取当前的时间

var date=new Date()

获取指定的时间

var date = new Date(123456) //一个参数毫秒值 将这个毫秒值去加上对应的1970.1.1 0:0:0
var date = new Date('2000/1/1 00:00:00') //指定一个字符串 来指定对应的时间 规定格式
var date = new Date(2000,10,5,12,15,15) //年 月 日 时 分 秒 

get 获取时间

 var arr = new Array();
var obj = new Object();
var date = new Date();
console.log(date);
console.log(date.getFullYear());//返回年
console.log(date.getMonth());//返回月
console.log(date.getDate());//获取当天日期
console.log(date.getDay());//获取星期几
console.log(date.getHours());//获取当前小时
console.log(date.getMinutes());//获取当前分钟

set 设置时间

date.setFullYear(1999,10,10) //设置月和天
date.setMonth(9,20)//设置天
date.setDate(30) //设置天
date.setHours(10,15,20,120) //可以同时设置分 秒 毫秒
date.setMinutes(10) //可以同时设置秒 毫秒
date.setSeconds(20) //可以同时设置 毫秒
date.setMilliseconds(150)//毫秒值设置

设置时间要比实际的月份少一个月

//其他方法
var date = new Date()
//转为字符串
console.log(date.toString()); //普通字符串转换
console.log(date.toDateString()); //以对应的日期格式进行转换
console.log(date.toLocaleDateString()); //以本地的日期格式转换
console.log(date.toLocaleString() );//以本地的编码转为string
console.log(date.toTimeString()); //以对应时间时间格式转换
console.log(date.toUTCString());//以utc格式进行转换
//parse 格式化 转为NaN 日期就是一个Number值 
console.log(Date.parse("2012/12/12")); //以特定的格式进行转换 得到的是一个毫秒值

对象

对象是一种复合的数据类型,在对象中可以保存多个不同数据类型的属性。

new Object() 方法

var person1 = new Object();   //创建了一个新的空的对象
 person1.name = "jack";

字面量方式

var obj = {
    name:'jack'
}

对象的构成

对象的结构是以key:value的形式体现(键值对的形式 key是唯一的(字符串类型) value可以是任意类型)

var obj = {name:'jack',age:18,isGirl:true,likeFoods:['西瓜','冬瓜','南瓜','哈密瓜'],likeUser:{name:'张三',age:15}}

属性的查看

var obj = {name:'jack',age:18,isGirl:true,likeFoods:['西瓜','冬瓜','南瓜','哈密瓜'],likeUser:{name:'张三',age:15}}
console.log(obj.name) //第一种访问 jack
console.log(obj['name']) //第二种访问 jack
console.log(obj.likeFoods[3]) //哈密瓜 对象里面嵌套数组
console.log(obj.likeUser.age) //15 对象里面嵌套对象

属性的删除

var obj = {
    name:'张三',
    age:18,
    fei:function(){
        console.log('本人就是张三');
    }
}
delete obj.name 
delete obj.fei  

属性的添加

var obj = {
    name:'张三',
    age:18,
    fei:function(){
        console.log('本人就是张三');
    }
}
//往对象中添加属性
obj.sex = '男' 
//往对象中添加方法
obj.pao = function(){
  console.log('我能跑起来')
}

this 关键字

this 都指向全局对象

function sayHello(){
    console.log(this);
}
//函数的this 指向他的调用者 谁调用这个函数 this就是指向谁
//全局调用的 js的顶层对象 全局对象 window 也就是全局写的变量 以及全局调用的方法都是window的
sayHello() //window调用的 this指向window   sayHello() == window.sayHello()
var a = 10 //全局变量a 相当于window的一个属性及属性值 a:10
console.log(window['a']);//10
//也就意味在全局声明的内容都是window的内容
//也就是全局调用的内容里面的this属于window
console.log(this) //window window.onload = function(){}
var obj = {
    name:"jack",
    sayHi:function(){
        console.log(this);
        console.log(this===obj);//true
        console.log(this.name); //访问这个name属性
    }
}
//调用这个函数
obj.sayHi() //obj调用的 this指向obj
//处于对应的对象里面的this指向当前的对象

定时器

var timer=window.setInterval(func,2000);
            var i=0
            function func(){
                console.log("你好",i)
                i+=1
            }

延时器

var timer1=window.setTimeout(function (){
                console.log("你好啊!!!");
            },3000);

 

posted on 2022-08-11 21:11  zzy扁桃体永不发言  阅读(21)  评论(0)    收藏  举报