今天去了一家公司面试,是截止目前问得比较多的一家。下面记录一下面试的笔试题和一个实操题:
笔试题:
1.typeof返回的类型:
undefined、boolean、string、number、object
注意这里没有null,null也是属于object的。
同时说一下js的数据类型这里容易和typeof搞混!
js的数据类型可以分为基本数据类型和复合数据类型:
基本数据类型:undefined、boolean、string、number、null
复合数据类型(也叫复杂数据类型):也就是object
2.vue声明周期:(此处盗图一张,点击此处访问原文章)
面试的时候回答8个阶段:beforeCreate ===> created ===> beforeMount ===> mounted ===> beforeUpdate ===> updated ===> beforeDestroy ===> destroyed
3.vue组件之间的传值
父子间传值:
父传子:定义一个属性msg="abc"在子组件上,子组件通过一个props:["msg"] 来进行接收父组件传递过来的信息。
子传父:在子组件上定义一个方法在方法中使用 $emit ( eventName,args..
)
参数eventName(必传参数): 传递到父级的事件名
参数args(可选参数): 传递到父级数据
在父组件中可以用$on来进行监听获取子组件传递上来的数据
4.box-sizeing
语法:box-sizing: content-box|border-box|inherit
content-box:这是CSS2.1指定的宽度和高度的行为。指定元素的宽度和高度(最小/最大属性)适用于box的宽度和高度。元素的填充和边框布局和绘制指定宽度和高度除外
border-box:指定宽度和高度(最小/最大属性)确定元素边框box。也就是说,对元素指定宽度和高度包括padding和border的指定。内容的宽度和高度减去各自双方该边框和填充的宽度从指定 的"宽度"和"高度"属性计算
inherit:指定box-sizing属性的值,应该从父元素继承
简单来说就是:设置 box-sizeing可以改变一个标签的计算宽高的机制。相信大家都知道盒子模型分为标准模型和IE模型;
标准盒模型的宽度就是 content,而IE模型的宽度却是content+padding+border;
然后我们可以通过box-sizeing这个属性来切换这两种模型,content-box就是只有content作为宽,border-box的宽就是content+padding+border;
虽然用法知道了,但是还是需要自己去实践一遍,看一下是不是说得正确,其实网上有很多东西,你去看因为你不懂会以为他写的都是正确的,但是当你到达一定时候或者一定高度的时候,
你就会明白原来网上有些东西不一定是正确的。好多博客上的内容都是复制过去复制过来,很容易将错误的观点和结论进行传播,所以需要自己去实践才能辨别真假。
下面我通过两张截图来验证上面的结论。
现在就好理解box-siezing的两个属性值的意思了。
原文:https://www.cnblogs.com/justyouadmin/p/10618445.html