Object.create()和new object()和{}的区别
JavaScript中的Object.defineProperty()和defineProperties()
Web Maker——一款基于浏览器的可离线的 CodePen 替代品
数据监测
尚硅谷的天禹老师的vue教程源码 vue_basic 的列表渲染
Object.getOwnPropertyDescriptor(对象,属性)
对象的内个属性都有一个描述Descriptor,用来控制该属性的行为
/* {
value: 123,
writable: true,
enumerable: true,
configurable: true
}*/
Object.assign(目标对象,需要合并的对象);
Object.getOwnPropertySymbols() 方法,可以获取指定的对象的所有Symbol属性名
该方法返回一个数组,成员是当前对象的所有用作属性名的Symbol值
**Reflect.ownKeys()**方法可以返回所有类型的键名,包括常规和Symbol键名
类数组遍历
let iter = {
0:"a",
1:"b",
2:"cc",
length:3,
[Symbol.iterator]:Array.prototype[Symbol.iterator]
}
for (const iterEle of iter) {
console.log(iterEle)
};
设备宽高
screen.availWidth 设备的宽,不包括任务栏的宽
screen.width 设备的宽,包括任务栏的宽
浏览器位置和宽高
window.outerWidth 浏览器可视区界面的宽度 (window.innerWidth+菜单栏上面的+控制台)
window.innerWidth 浏览器内容可视区宽度
window.screenTop / window.screenY 浏览器距离设备的顶部距离
元素位置和宽高
Element.clientWidth 元素的内容可视区宽度 [ 内容宽度/width + padding ] 不计算滚动条的宽高
Element.offsetHeight 元素的内容可视区高度 [内容高度/height +padding+border] 计算滚动条的宽高
Element.scrollHeight 元素内容实际高度,包括超出视窗的溢出部分 [超出内容 + 内容高度/height+ padding]
Element.clientLeft 获取元素的左边框的宽度。
Element.offsetTop 元素到offsetParent顶部的距离
Element.getBoundingClientRect() 返回元素的大小及其相对于视口的位置
document.documentElement.scrollTop = 100; 页面滚动高
window.scrollTo(200,100); 页面滚动宽高
鼠标位置
/*
* clientX/Y : 点击位置距离当前body可视区域的x,y坐标
*
* pageX/Y : 对于整个页面说,包括滚定条滚过去的body的部分长度
*
*
* screenX/Y : 点击位置距离当前你的电脑屏幕左上角的 x,y坐标
*
* offsetX/Y : 相对于 被点中的元素 的左上角的偏移量(及时当前元素有部分被滚动条隐藏了
* 这个偏移量也是按照实际元素的宽高来的 )
*
* x,y 和 clientX/Y 一样
*
* layerX/Y: 鼠标相比较当前坐标系的位置, 如果触发元素没有设置定位(绝对和相对)
* 以页面为参考点,如果有,以当前出发元素的左上角为坐标系
*
*
* */
https://blog.csdn.net/u010200222/article/details/45622687
let iter = {
0:"a",
1:"b",
2:"cc",
length:3,
[Symbol.iterator]:Array.prototype[Symbol.iterator]
}
for (const iterEle of iter) {
console.log(iterEle)
};
闭包
内存泄漏,内存溢出
节流和防抖