JavaScript中获取DOM元素宽度和高度的常用API
JavaScript中获取DOM元素宽度和高度的常用API
clientWidth 和 clientHeight
只读属性
对于内联元素, 其clientWidth和clientHeight属性值为 0
Element.clientWidth 属性表示元素的内部宽度,以像素计。该属性包括内边距,但不包括垂直滚动条(如果有)、边框和外边距
JavaScript中的继承
javascript中的继承
继承
继承是面向软件技术当中的一个概念。如果一个类别B“继承自”另一个类别A,就把这个B称为“A的子类”,而把A称为“B的父类”也可以称“A是B的超类”。继承可以使得子类具有父类别的各种属性和方法,而不需要再次编写相同的代码。在令子类别继承父类别的同时,可以重新定义某些属性,并重写某些方法,即覆盖父类别的原有属性和方法,使其获得与父类别不同的功能。另外,为子类追加新的属性和方法也是常见的做法。(引用 维基百科)
在浏览器地址栏输入url到页面展示出东西都发生了什么
在浏览器地址栏输入url到页面展示出东西都发生了什么
看到这个问题,第一反应,这个问题好像已经被面试官问的烂大街了,网上随便一搜,全是,有什么好记录的。我开始也是这么想的,以为被问烂大街的东西不会被问到了,结果上周出去面试,最没想到的是居然被问到了,啊难受。
Vue拦截数组变异方法的思路
Vue拦截数组变异方法的思路
在JavaScript的数组中,有一些可以改变原数组的方法,我们称之为数组的变异方法,包括splice、 sort、push、pop、reverse、shift、unshift等,当我们在vue中通过这些方法更改数组的时候会触发视图更新,这是为什么呢?
Vue响应式系统实现基本思路
Vue响应式系统实现基本思路
在vue中,我们可以使用watch监听数据的变化,像下面代码一样。
const vm = new Vue({
data: {
a: 1
}
})
vm.$watch('a', () => {
console.log('a被修改了')
})
vm.a = 2
当执行vm.a = 2的时候,会输出 ‘a被修改了‘, 但这是怎么实现的呢,我将一步一步记录下来,但此篇文章只记录思路,具体vue怎么实现还需要看源码。
共计 45 篇文章,6 页。