classList
classlist.add 追加类
classlist.remove删除类
classlist.toggle切换类
element.dataset.x 查询指定自定义属性 自定义属性data- 开头 规范
offset
offset类获取的距离包含pading margin等边距
offsetWidth 获取本身宽
offsetHeight获取本身高
offsetTop 距离窗口顶部距离
offsetLeft 距离窗口左侧距离
scroll 滚动 (可读写)
scrollLeft左侧被卷去的距离
scrollTOp 上部被卷去的距离
document.documentElement 可以获取 html
resize窗口变化事件
element.addEventListener('resize',()=>{
console.log('我触发了') //当窗口大小发生变化
})
window.scrollTo(x,y) //页面滚动到...x,y
document.addEventListener('load',()=>{
windows.scroll(200,200) //页面加载后会在xy=200px的地方
})
异步加载js head引入js文件文件内使用
window.onload={
code.
}
||
window.addEventListener('load',()=>{
code.
})
DateTime
实例化
let a = New Date(time) //括号内空获取的为当前时间 可传入指定时间
methods:
FullYear 获取年份 如2023
Month 获取月份 0-11
Date 获取日
Day 获取周几 周日为0
toLocaleString() 获取当前时间 如 2023/5/18 08:21:04
时间戳
首先要实例化 实例化后:
x.GetTime() 可获取当前距离1970年 时间戳(括号内传时间 获取未来距离1970时间戳)
location
methods:
href='http://xxxx' 跳转至。。。
hash 可以获取地址栏#后的数据
seach 可以获取地址栏?后的数据
reload(true) 强制刷新页面 括号内参数可选
localstorage
methods:
setItem(key,value) 存入一个数据 参数键值对
getItem(key) 读取指定数据
removeItem('key') 删除指定数据
clear() 清除所有数据
localstorage的生命周期在被删除时 且存入的类型是复杂类型时不能直接使用
localstorage.setItem('key',Json.StringIfy(value)) 首先先把负责数据类型转为json格式
如需使用 Json.parse(key)
拓展
CSS:
transfrom移动
translate(X,Y)方向
transtion:all .3s; 过渡
闭包
function outer() {
var outerVar = 'I am outer';
function inner() {
var innerVar = 'I am inner';
console.log(outerVar + ' and ' + innerVar);
}
return inner;
}
var closure = outer();
closure(); // 输出:I am outer and I am inner
在上面的示例中,函数outer创建了一个内部函数inner,并返回了该函数。在调用outer后,我们将返回的函数保存在变量closure中。
当我们调用closure()时,它能够访问到它被创建时所处的作用域中的变量outerVar和innerVar,即使这些变量在函数执行时已经不再存在。
这就是闭包的工作原理:内部函数inner形成了一个闭包,包含了它自己的代码以及对外部作用域中的变量的引用。
希望这个详细的解释能够帮助你理解JavaScript中的闭包概念。如果还有其他问题,请随时提问。