倒计时效果
//如何实现每秒自动跳动?
function getDeltat(times){
var curtime = +new Date();
var ddltime = +new Date(times);
deltat = Math.floor((ddltime - curtime) / 1000);
var h = Math.floor(deltat / 3600);
deltat %= 3600;
var m = Math.floor(deltat / 60);
var s = deltat % 60;
//如果是负数,怎么在符号后面补零
return (h < 10 ? '0' + h : h) + ':' + (m < 10 ? '0' + m : m) + ':' + (s < 10 ? '0' + s : s);
}
console.log(getDeltat("2022-6-14 14:30:20"));
对象
数组对象
创建方式
字面量、new
检测是否为数组
arr instanceof Array
Array.isArray(arr);
//H5,ie9以上支持
数组增加删除元素
var arr = [1,2,3];
console.log(arr);
//添加
var len = arr.push('appple'); //末尾 插入,然后返回长度
alert(len);
console.log(arr);
len = arr.unshift('a','b'); //开头插入,返回长度
alert(len);
console.log(arr);
//删除
arr.pop(); //末尾删除一个,返回被删除元素
arr.shift(); //开头删除一个,返回被删除元素
排序
arr.reverse(); //翻转方向
arr = [1,13,4,7,77];
arr.sort(); //冒泡排序,有bug,只比第一位数字
//改进
arr.sort(function(a,b){ //增序
return a-b;
});
arr.sort2(function(a,b){//降序
return b-a;
});
索引
arr = [1,13,77,4,7,77];
//返回第一次出现的索引号,参数为索引元素内容,没有输出-1
var index = arr.indexOf(13);
//返回后面第一次出现的索引号,没有输出-1
var index = arr.lastindexOf(77);
案例:数组去重
var arr = [1,2,1,6,1,2,3];
var NewArr = [];
for(var i = 0;i < arr.length;i++){
NewArr.push(arr[i]);
while(NewArr.indexOf(arr[i]) != NewArr.lastIndexOf(arr[i])){
console.log('1st:' + NewArr.indexOf(NewArr[i]));
console.log('2nd:' + NewArr.lastIndexOf(NewArr[i]));
NewArr.pop();
}
}
//优化
//for(var i = 0; i < arr.length;i++){
// if(NewArr.indexOf(arr[i] === -1) NewArr.push(arr[i]);
//}
//-优化
for(var i = 0;i < NewArr.length;i++){
console.log(NewArr[i]);
}
数组转为字符串
var arr = [1,2,3];
console.log(arr.toString()); //1,2,3
var arr1 = ['9','8','75'];
console.log(arr.join('&)); //指定符号连接
至P178