<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>对象练习</title>
</head>
<body>
<ul id="list">
<!-- <li><span>姓名:朱温</span><span>年龄:30岁</span></li> -->
</ul>
</body>
</html>
<script type="text/javascript">
var arr = [{name:'朱温',age:30},{name:'李克用',age:32},{name:'石敬瑭',age:28},{name:'刘知远',age:25},{name:'郭威',age:21}
];
var list = document.getElementById("list");
var html = '';for(var i=0;i<arr.length;i++){
html += '<li>';
html += '<span>姓名:'+arr[i].name+'</span>';
html += '<span>年龄:'+arr[i].age+'</span>';
html += '</li>';}
list.innerHTML = html;
</script>
3.类型转换
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>类型转换</title>
</head>
<body>
</body>
</html>
<script type="text/javascript">
/*
Number() 把数据转化为number类型,如果是字符串类型转number,只能转数值型的字符串,否则转为NaN, bool类型的数据会转化为 0 和 1、
String() 转化成字符串类型
toString() 转化成字符串
*/
var str1 = '123px'; // 字符串
var num1 = Number(str1);
console.log(num1,typeof num1);
var num = 234;
var str2 = String(num);
var str3 = num.toString();
console.log(str2,typeof str2);
console.log(str3,typeof str3);/*
常用
Number() : 会忽略字符串开头的空格
parseInt(): 必须是以数字或者空格+数字开头,后面的字符随便,会把开头的数字提取出来,转化为number,当遇到第一个非数字字符的时候,停止转化
两个参数
1.要转化的内容
2.把要转化的内容,按照几进制转化为10进制,默认是10
parseFloat() 参数一个
用法和parseInt是一样的,区别是parseInt只能转整数,parseFloat是可以转小数的
*/
var str4 = ' 456';
var num2 = Number(str4);
console.log(num2,typeof num2);
var num3 = parseInt(' 234px34px');
console.log(num3,typeof num3);
var num4 = parseInt('100sadf',2);
console.log(num4);
var num5 = parseFloat('100.25sadf');
var num6 = parseInt('100.25sadf');
console.log(num5,num6);/*
对象转字符串 JSON.stringify(obj)
字符串转对象 JSON.parse(json类型的字符串);
json和对象大致一样,只是json的key和value都必须使用双引号括起来
json数据中一般没有方法
*/var obj ={name:'朱友珪',
age:23,
job:'弑父'};
var str5 = JSON.stringify(obj);
console.log(str5);
var str6 = '{"name":"李存勖","age":23}';
var obj1 = JSON.parse(str6);
console.log(obj1);
</script>
4.Date对象
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Date</title>
</head>
<body>
</body>
</html>
<script type="text/javascript">
/*
Date 日期对象,是一个专门处理日期的构造函数
*/
// 如果没有参数,new Date() 此时获取的是当前电脑的系统时间
var date = new Date();
console.log(date, typeof date);
// Date 中常用的函数,返回值都是number
//getYear(): 获取的是1900年到当前多少年,目前已被废弃
var year = date.getYear();
console.log(year);
//getFullYear(): 获取的是当前年份
var fullYear = date.getFullYear();
console.log(fullYear);
//getMonth():获取当前日期对象中的月份,从0开始计算
var month = date.getMonth();
console.log(month);
//getDate(): 获取当前月份的第几天
var day = date.getDate();
console.log(day);
//getDay(): 获取星期几,0-6 0代表周日
var week = date.getDay();
console.log(week);
//getHours(): 获取当前日期对象中的小时数,0-23
var h = date.getHours();
console.log(h);
// getMinutes(): 获取当前日期对象中的分钟数,0-59
var m = date.getMinutes();
console.log(m);
// getSeconds(): 获取当前日期对象中的秒数,0-59
var s = date.getSeconds();
console.log(s);
//getMilliseconds() 获取毫秒
var ms = date.getMilliseconds();
console.log(ms);
console.log(fullYear+'年'+(month+1)+'月'+day+'日'+' '+h+':'+m+':'+s);
//getTime(): 时间戳,返回的是1970年1月1日早上8点到当前时间的毫秒数
var time = date.getTime();
console.log(time);
function myDate(){
var date = new Date();
var y = date.getFullYear();
var mm = date.getMonth()+1;
var d = date.getDate();
var h = date.getHours();
var m = date.getMinutes();
var s = date.getSeconds();
var week = date.getDay(); // 0-6
var arr = ['星期日','星期一','星期二','星期三','星期四','星期五','星期六'];
// document.body 获取body
s = s<10?'0'+s:s;
document.body.innerHTML = y+'年'+mm+'月'+d+'日 '+h+':'+m+':'+s+' '+arr[week];}myDate();setInterval(myDate,1000);/*
创建固定日期的date对象,必须在Date中写入日期参数
1.Date(年,月,日,时,分,秒) 注意:月份-1
2.Date("月 日 年 时:分:秒")
3.Date("月 日,年 时:分:秒")
*/
var date2 = new Date(2021,2,27,12,0,0);
console.log(date2);
var date3 = new Date("3 27 2021 12:00:00");
console.log(date3);
var date4 = new Date("3 27,2021 12:00:00");
console.log(date4);
</script>
5.倒计时
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>倒计时</title>
</head>
<body>
</body>
</html>
<script type="text/javascript">
var timmer;
function QM(){
//设置date对象,如果不给时分秒,则表都是0
var qm = new Date('4 3 2021');
//获取当前时间
var now = new Date();
//两个日期对象相减,得到的是时间戳的差值
var oDate = qm - now;
console.log(oDate);
// 天数
var day = Math.floor(oDate/1000/3600/24);
console.log(day);
//小时
var hour = Math.floor((oDate/1000/3600)%24);
console.log(hour);
//分钟
var min = Math.floor((oDate/1000/60)%60);
console.log(min);
//秒
var s = Math.floor((oDate/1000)%60);
console.log(s);
document.body.innerHTML = '距离清明节放假还有'+day+'天,'+hour+'小时'+min+'分钟'+s+'秒';
// 倒计时终止
if(oDate<=0){clearInterval(timmer);}}QM();
timmer = setInterval(QM,1000);
</script>