Date对象
Date类型使用自UTC(Coordinated Universal Time,国际协调时间) 1970年1月1日午夜(零时)开始经过的毫秒数来保存日期。Date类型保存的日期能够精确到1970年1月1日之前或之后的 285616年。
Date对象的创建
构造函数创建日期
var date = new Date();
var date = new Date(); //当前的时间
console.log(typeof date); //object
创建日期,并指定日期
var date=new Date("2023-9-12 12:12:12:12");//采用"-"分隔
var date=new Date("2023/9/12 12:12:12:12");//采用"/"分隔
var date=new Date(2023,8,12,12,12,12,12);//月份是从0开始的
日期对象的方法
setDate() / getDate();从Date对象中返回一个月中的某一天(1~31)getDay();从Date对象返回一周中的某一天(0~6)set / getMonth();从Date对象中返回月份(0~11)set / getFullYear();从Date对象以四位数返回年份set / getHours();返回Date对象的小时(0~23)set / getMinutes();返回Date对象的分钟(0~59)set / getSeconds();返回Date对象的秒数(0~59)set / getMilliseconds();返回Date对象的毫秒set / getTime();返回1970年1月1日至今的毫秒数getTimezoneOffset();返回本地时间与格林尼治标准时间(GMT)的分钟差
var date=new Date();
//年
console.log(date.getYear());//需要加1900才会变成正确的年份
console.log(date.getFullYear());
//月
console.log(date.getMonth()+1);//月份默认从0开始,所以得加上1才能显示正确的月份
//日
console.log(date.getDate());
//星期
console.log(date.getDay());
//时
console.log(date.getHours());
//分
console.log(date.getMinutes());
//秒
console.log(date.getSeconds());
//毫秒
console.log(date.getMilliseconds());//1000毫秒=1秒
//时间戳,从指定日期到现在的毫秒数
console.log(date.getTime());
console.log(date.valueOf());
console.log(Date.now());
//把一个指定日期转换成时间戳
console.log(Date.parse("2023-9-12 12:12:12:12"));
对象Object
对象Object 是一种引用数据类型。
在 ECMAScript 中对象可以存储变量和函数(数据和功能)
创建对象
构造函数创建对象
var obj = new Object();
new关键字可以省略
var obj=Object(); //省略了new关键字,不建议
//1.创建一个空对象
var person = new Object()
//2.给空对象添加属性和值
// key value
person.name = "刘亦菲";
person.age = 18;
person.sex = "女";
//3.查看某一个属性
console.log(person.name);//刘亦菲
//4.修改
person.name = "刘诗诗" //修改1个数据
字面量方式创建对象
var obj = {
name : "刘亦菲", //创建属性字段,最后加逗号
age : 18 ,
sex : "女"
};
//1.创建一个对象并添加属性
var person = {
name: "刘亦菲",
age: 18,
sex: "女"
}
//2.修改属性
person.age = 30
//3.查看
// 查看某属性的值
console.log(person.age);//30
对象的其他特性
1. 属性字段也可以使用字符串形式
var box={
"name" : "张三", //也可以用字符串形式
"age" : 28
};
2. 两种属性输出方式
console.log(box.age); //点表示法输出
console.log(box["age"]); //中括号表示法输出,注意引号
3. 给对象创建方法
方式一:
var obj = {
run: function () { //对象中添加方法(函数)run
return "正在跑步..";
}
}
obj.run(); //调用对象中的方法
方式二:
var obj = {
run() { //对象中添加方法(函数)run
return "正在跑步..";
}
}
obj.run(); //调用对象中的方法
4. 使用 delete 删除对象属性 或 方法
delete obj.name; //删除属性
delete obj.run; //删除方法
4. 遍历对象
for (var key in obj) {
//将对象中的键和值都遍历输出
console.log(key, obj[key]);//这里得使用 '[]'
}
定时器
定时器 setInterval
setInterval(): 定时器方法, 可按照指定的周期(以毫秒计)来调用函数或计算表达式
创建定时器
setInterval(code,millisec)
code: 要调用的代码块或者函数
millisec: 是周期性执行代码块或函数的间隔,以毫秒计
方法会返回定时器的序列号,默认从1开始
var timer;
//语法1
// timer=setInterval("console.log('你好!某某某')",1000);
//语法2
timer=setInterval(function(str){
console.log("你好!"+str);
},1000,"某某某")
关闭定时器
clearInterval(序列号) //清除定时
setInterval()方法会不停地调用函数,直到 clearInterval()被调用或窗口被关闭。
var timer=setInterval("console.log('你好!某某某')",1000);//创建定时器
clearInterval(timer);//关闭定时器
延时器 setTimeout
setTimeout(): 指定的时间过后执行一次代码
创建延时器
setTimeout(code,millisec)
code: 要调用的代码块或者函数
millisec: 指定的时间,以毫秒计
方法会返回延时器的序列号,默认从1开始
var timer;
timer=setTimeout(function(str){
console.log(str+"我出现了!");
},3000,"三秒后")
取消延时器
clearTimeout(序列号);
同步与异步
//同步:按照顺序一步一步的执行
//从上往下执行,就是同步的
console.log(111);
console.log(222);
console.log(333);
console.log("-------------------------");
//异步:多任务多线程,可以按照其它的顺序执行。
console.log(1111);
//被推入执行队列中,等待被执行
setTimeout(function(){
console.log(2222);
},0)
console.log(3333);