时间对象
<script>
// js 基于对象的 万物皆对象
var str1 = new String('zzz'); //通过new 关键字创建的 是对象obj
console.log(typeof str1) // obj
// Date() 日期对象
// 常用: 倒计时 显示当前时间 时间歌
var date = new Date()
console.log(date) //Wed Aug 14 2019 09:23:38 GMT+0800 (中国标准时间)
var week = date.getDay(); //星期 从0开始,0 --> 周日
var arr = ['周日','周一','周二','周三','周四','周五','周六']
console.log(arr[week]) //周三
console.log(arr[0]) //周日
var year = date.getFullYear(); //年
console.log(year) //2019
var month = date.getMonth(); //月 月份里从0-11,使用时需要加一
console.log(month+1) // 8
var day = date.getDate(); //日
console.log(day) // 14
var hours = date.getHours(); //时
console.log(hours) // 9
var min = date.getMinutes(); //分
console.log(min) //23
var sec = date.getSeconds(); //秒
var ms = date.getMilliseconds(); //毫秒
</script>
实例:简易时钟
<h1></h1>
<script>
function time(){
var date = new Date();
var year = date.getFullYear();
var month = date.getMonth()+1;
var day = date.getDate();
var week = date.getDay();
var arr = ['周日','周一','周二','周三','周四','周五','周六']
var hour = date.getHours();
var min = date.getMinutes();
var sec = date.getSeconds();
var hs = document.querySelector("h1")
hs.innerHTML = '当前时间:'+ add(year) +'年'+ add(month) +'月'+ add(day) + '日' + arr[week] + add(hour) + ':' + add(min) + ':' + add(sec) ;
}
time()
setInterval(time,1000)
function add(n){
return n<10?'0'+n:n
}
</script>
倒计时
<h1></h1>
<script>
//结束的时间
//开始的时间
var hs = document.querySelector("h1")
time('2020,1,1 00:00:00','距离元旦:')
function time(endtime,str){
var startDate = new Date(); //开始时间
var endDate = new Date(endtime); //结束时间
var times = endDate - startDate; //相差的是毫秒
//参照 1970年1月1日 00:00:00
var sec = parseInt(times/1000%60);
var min = parseInt(times/1000/60%60);
var hour = parseInt(times/1000/60/60%24);
var day = parseInt(times/1000/60/60/24);
hs.innerHTML = str+ bl(day) +'天'+ bl(hour) +':'+ bl(min) +':'+bl(sec)
}
setInterval(time,1000,'2020,1,1 00:00:00','距离元旦:')
function bl(n){
return n<10?'0'+n:n
}
</script>
字符串对象
<script>
// String 创建的方法
var str = 'qwer';
var str1 = String('asdf');
var str2 = new String('zxcv')
//属性和方法
// length 获取字符串的长度 str.length
// charAt() 返回相对下标的字符 str.charAt(index) 括号中数字从0开始,如果index>=length 取到一个空的字符串
// charCodeAt() 返回对应位置字符的编码 str.charCodeAt() 超过长度 code值为NaN
// indexOf(string,[index]) [index]为可选参数 string要查找的字符串,index表示从哪个位置开始查,默认不写从0开始
// 从前往后找 str.indexOf() 某个指定的字符串值在字符串中第一次出现的位置
// 查找的字符在原字符串中没有,返回值是 -1
// lastindexOf(string,[index]) 从后往前找
// 字符串比较大小 一位一位的比较,比较的是字符编码Code
console.log('1'>'2') // false
console.log('12'>'2') // false
//截取字符串
// subString()
var str = 'aasdsfghjhjkl';
console.log(str.substring(1)); // asdsfghjhjkl 一个值, 开始截取到字符串所有的
console.log(str.substring(-1)); // aasdsfghjhjkl 参数为负值,截取所有的
console.log(str.substring(0,3)); // aas 两个参数,包括开始,不包括结束
console.log(str.substring(5,3)); // ds 如果开始的值大于结束的,自动调换位置
// substr(start,length)
console.log(str.substr(3)); // dsfghjhjkl 一个值 开始截取到字符串所有的
console.log(str.substr(-3)); // jkl 参数为负,从后往前截取
console.log(str.substr(20)); // 参数大于字符串长度,取不到
console.log(str.substr(1,3)); // asd 从开始截取, 长度为length的字符串
//slice()
console.log(str.slice(0)); // aasdsfghjhjkl 一个值 开始截取到字符串所有的
console.log(str.slice(-3)); // jkl 参数为负,从后往前截取
console.log(str.slice(1,3)); // as 包括开始,不包括结束
console.log(str.slice(5,3)); //取不到 不会调换位置
//转换大小写
// toUpperCase() 转成大写 a --> A
str.toUpperCase()
// toLowerCase() 转成小写 A --> a
str.toLowerCase()
// 字符串分割 split()
var str2 = '2019/08/14'
console.log(str2.split()); // ["2019/08/14"] 参数为空 把字符串转为数组
console.log(str2.split('')); // ["2", "0", "1", "9", "/", "0", "8", "/", "1", "4"]
console.log(str2.split('/')); // ["2019", "08", "14"]
console.log(str2.split('0')); // ["2", "19/", "8/14"]
// replace(old,new) 字符串替换
var str3 = 'asdfgf'
console.log(str3.replace('a','ss'))
</script>