增删改
节点插入
父节点.appendChild(当前节点)
父节点.insertBefore(当前节点, 后方参照节点)
var insertedNode = parentNode.insertBefore(newNode, referenceNode)
//newNode:将要插入的节点
//referenceNode:被参照的节点(即要插在该节点之前)
//insertedNode:插入后的节点
//parentNode:父节点
创建了DOM元素,如果没插入到页面,那么页面上就不会显示
DOM元素增删改 box
DOM元素对象.innerHTML
DOM元素对象.innerText
cloneNode() 克隆节点
removeChild() 删除节点
parentNode.removeChild(item)
属性节点操作属性值
中括号语法操作DOM属性
elementObject.fang3='fangtofang3'
或elementObject['fang3']='fangtofang3'
设置对应属性的属性值elementObject.fang3
或elementObject['fang3']
获取对应属性的属性值delete elementObject.fang4
或delete elementObject['fang3']
属性节点操作与中括号语法操作有区别,不能混用
复习 box原生内容box原生子元素
const date = new Date();console.log(date, "当前时间");const dateType = typeof new Date();console.log(dateType, "时间对象的类型"); //'object'const dateObject = new Date("Sat Jul 09 2022 01:02:03 GMT+0800 (中国标准时间)");console.log([dateObject]); //"Sat Jul 09 2022 01:02:03 GMT+0800 (中国标准时间)";//因为调用toString()隐式转化了。// console.dir(dateObject)//可以看到它就是一个对象。console.log(dateObject.getFullYear()); //2022console.log(dateObject.getMonth()); //6console.log(dateObject.getDate()); //9console.log(dateObject.getDay()); //6 [0,6] [周日 到 周一 到 周六]console.log(dateObject.getHours()); //1console.log(dateObject.getMinutes()); //2console.log(dateObject.getSeconds()); //3console.log(dateObject.getMilliseconds()); //0console.log(dateObject.getTime()); //1657299723000console.log(dateObject.toLocaleString()); //2022/7/9 01:02:03console.log(dateObject.toLocaleDateString()); //2022/7/9console.log(dateObject.toLocaleTimeString()); //01:02:03
function getTimeString() {function addZero(num) {return num > 9 ? num : `0${num}`;}const time = new Date();const year = time.getFullYear();const month = time.getMonth() + 1;const date = time.getDate();const hours = time.getHours();const minutes = time.getMinutes();const seconds = time.getSeconds();const milliseconds = time.getMilliseconds();const weekIndex = time.getDay();const weeksList = ["日", "一", "二", "三", "四", "五", "六"];const day = weeksList[weekIndex];const nowTime = `${addZero(year)}年${addZero(month)}月${addZero(date)}日 ${addZero(hours)}时${addZero(minutes)}分${addZero(seconds)}秒${addZero(milliseconds)} 周${day}`;return nowTime;}console.log(getTimeString())
定时器是异步任务,只要当同步代码执行完毕之后,才能执行。
定时器的参数说明
setInterval() 间隔多少时间后,去执行某些事情,是多次调用
// setInterval(function(){},1000)const timer1 = setInterval(() => {console.log("setInterval(),每过一次时间间隔就执行一次", 1);}, 1000);const theFunction = () => {console.log("定时器可以传递多个参数:1、执行的函数 2、时间 3、后面的参数就是执行函数在执行的时候传递的实参 定时器是有返回值的,返回值代表定时器处于当前页面中的第几个", 2);}const timer2 = setInterval(theFunction, 1000);
setTimeout() 一定的时间后,去执行某些事情,是单次调用
// setTimeout(function(){},1000)const timer2 = setTimeout(() => {console.log("setTimeout(),第一次时间执行一次,之后都不再执行", 1);}, 1000);const theFunction = (arg1,arg2) => {console.log("定时器可以传递多个参数", arg1,arg2);//"定时器可以传递多个参数",'入参一','入参二'}const timer2 = setTimeout(theFunction, 1000,'入参一','入参二');
每个定时器都会返回一个定时器编号
返回值代表当前定时器是当前页面中的第几个定时器
定时器编号是延时定时器与重复执行定时器共用的。
可以用对应的清理定时器的方法来清除该定时器。
const timer1 = setInterval(() => {console.log("setInterval()");}, 1000);const timer2 = setTimeout(() => {console.log("setTimeout()");}, 1000);console.log("timer1--->", timer1);console.log("timer2--->", timer2);clearInterval(timer1);clearTimeout(timer2);
清除定时器
clearInterval()
用来清除setInterval()所生成的定时器
const timer1 = setInterval(() => {console.log("setInterval()");}, 1000);clearInterval(timer1);
clearTimeout()
用来清除setTimeout()所生成的定时器
const timer2 = setTimeout(() => {console.log("setTimeout()");}, 1000);clearTimeout(timer2);
上一篇:PHP 的运行方式有哪些?
下一篇:字符函数和字符串函数(详解)