前端基础周测-09

一、单选题
 

Vue的生命周期

1. 关于 Vue 的生命周期,下列哪项是不正确的?
DOM渲染在 mounted中就已经完成了
实例从创建到销毁的过程,就是生命周期
created表示完成数据观测、属性和方法的运算和初始化事件,此时 $el属性还未显示出来
页面首次加载过程中,会依次触发 beforeCreate,created,beforeMount,mounted,beforeUpdate,updated
参考答案:D
题目解析:
第一次页面加载会触发beforeCreate、created、beforeMount、mounted 这几个钩子。
知识点:
vue生命周期分为8个阶段:创建前/后、载入前/后、更新前/后、销毁前/销毁后。
new Vue() 实例化 Vue 对象会调用 _init 方法完成一系列初始化操作,在初始化数据之前会调用 beforeCreate 钩子,在数据初始化后调用 created 钩子。
在生成渲染函数之后,调用 beforeMount 钩子,接着根据渲染函数生成真实DOM并挂载,然后调用 mounted 钩子。
数据更新时,在重新渲染之前调用 beforeUpdate 钩子,在完成渲染后调用 updated 钩子。
在调用实例方法 $destroy()销毁实例时首先调用 beforeDestroy 钩子,然后执行销毁操作,最后调用 destroyed 钩子。
 
2. vue的生命周期,执行顺序正确的是:
beforeCreate->created->mounted->destory
mount->beforeCreate->create->destory
beforeCreate->created->mount->destory
init->beforeCreate->create->destory
参考答案:A

 

组件间的参数传递

3. 关于 Vue 组件间的参数传递,下列哪项是不正确的?
若子组件给父组件传值,可使用 $emit方法
祖孙组件之间可以使用 provide和 inject方式跨层级相互传值
若子组件使用 $emit('say')派发事件,父组件可使用 @say监听
若父组件给子组件传值,子组件可通过 props接受数据
参考答案:B
题目解析:“相互传值”描述错误。只能上层传, 下层收。
知识点:祖先组件provide注入,并且传入的是整个this指向。后代组件接收。
 

v-model 

4.下列关于 v-model 的说法,哪项是不正确的?
v-model能实现双向绑定
v-model本质上是语法糖,它负责监听用户的输入事件以更新数据
v-model是内置指令,不能用在自定义组件上
对 input使用 v-model,实际上是指定其 :value和 :input
参考答案:C
题目解析:vue2.2+版本新增了一个功能,可以在自定义组件上使用v-model实现双向绑定。
知识点:官方原文是这样的:允许一个自定义组件在使用 v-model 时定制 prop 和 event。默认情况下,一个组件上的 v-model 会把 value 用作 prop 且把 input 用作 event,但是一些输入类型比如单选框和复选框按钮可能想使用 value prop 来达到不同的目的。使用 model 选项可以回避这些情况产生的冲突。
 

v-for

5. 以下遍历并获取索引的正确方式
<tr v-for="(book,index) in books" :key="index">
<tr v-for="book,index in books" :key="index">
<tr v-for="(index,book) in books" :key="index">
<tr v-for="(index:book) in books" :key="index">
参考答案:A
知识点:
v-for 指令基于一个数组来渲染一个列表。(其中一个方法)
v-for 指令需要使用 item in items 形式的特殊语法,其中 items 是源数据数组,而 item 则是被迭代的数组元素的别名
v-for 块中,我们可以访问所有父作用域的 property。
v-for 还支持一个可选的第二个参数,即当前项的索引。

 

v-show

6. v-show指令的特点是
v-show指令是通过修改元素的displayCSS属性让其显示或者隐藏
v-show指令是直接销毁和重建DOM达到让元素显示和隐藏的效果
v-show指令是操作js动态的把DOM进行隐藏或显示的效果
以上都不对
参考答案:C
知识点:
v-show 指令根据表达式之真假值,切换元素的display CSS property。
      当条件变化时指令触发过渡效果。
注意:v-show如果条件为false,运行后,还是生成了代码(如:条件为false所在的标签)
   v-if 如果条件为false,就直接不生成代码
 

子组件向父组件传值

7. 关于子组件向父组件传值错误的是:
子组件中需要以某种方式(如点击事件)的方法来触发一个自定义的事件进行传值;
子组件通过修改父组件绑定在子组件上的数据进行传值
可以将需要传的值作为$emit的第二个参数,该值将作为实参传给响应事件的方法;
需要在父组件中注册子组件并在子组件标签上绑定自定义事件的监听。
参考答案:B
题目解析:子组件向父组件传值过程:A -> C -> D
 

跨域

8. 以下哪种情况一定不会发生跨域
www.jd.com与 www.taobao.com
www.jd.com:8080与 www.jd.com:8081
www.jd.com/item与www.jd.com/miaosha
http://jd.com与https://jd.com
参考答案:C 
 
 
9. 用于监听 DOM 事件的指令是:
v-on
v-model
v-bind
参考答案:A
 

动态获取路由

10. 以下获取动态路由{ path: ‘/user/:id’ }中id的值正确的是:
this.$route.params.id
this.route.params.id
this.$router.params.id
this.router.params.id
参考答案:A
题目解析:当一个路由被匹配时,它的 params 的值将在每个组件中以 this.$route.params 的形式暴露出来。

 

定义方法

11. 创建方法错误的是
var fun = () =>{};
fun(){}
function fun() {}
var fun = function () {}
参考答案:B
题目解析:
A:箭头函数,相当于匿名函数(使用function声明函数,但未指定函数名。匿名函数属于函数表达式,赋予一个变量则创造函数。赋予一个事件则成为事件处理程序或创建闭包等)
C:函数声明,使用function声明函数,并指定函数名
D:函数表达式:使用function声明函数,但未指定函数名,将匿名函数赋予一个变量
 
 

层次选择器

12. 在jQuery中需要选取<p>元素里所有<a>元素,则下列选择器写法正确的是()
$("p a")
$("p+ a")
$("p>a")
$("p~a")
参考答案:A
知识点:

parent child:匹配的parent选择器选择的元素下符合child选择器的后代元素(所有子孙)。

parent > child:匹配的parent选择器选择的元素下所有符合child选择器的直接后代元素。

prev + next:匹配符合prev选择器的元素后的下一个匹配next选择器的元素(同级兄弟)。

prev~siblings:匹配prev元素之后的所有 siblings 元素。

 

淡入淡出

13. 在jQuery中,关于fadeIn( )方法正确的是()
可以改变元素的高度
可以改变元素的透明度
可以改变元素的宽度
与fadeIn( )相对的方法是fadeOn( )
参考答案:B
知识点:
.fadeIn()方法通过匹配元素的不透明度做动画效果
.fadeOut() 方法通过匹配元素的透明度执行动画效果。一旦透明度达到0,display样式属性将被设置为none,以确保该元素不再影响页面布局。
 

.html( )

14. 在jQuery中,能够操作HTML代码及其文本的方法是( )
attr( )
text( )
html( )
val( )
参考答案:C
 
 
二、多选题
 

属性选择器

1. 下列选项中( )是属性选择器。
$("img[src=.gif]")

参考答案:A,C

 

基本选择器

2. 下列选项不属于JQuery基本选择器的是( )
*
:visible
h1 span
.document
参考答案:B,C
题目解析:
A:通配符选择器
B:可见性过滤器( :hidden 和 :visible)
C: h1、span各是一个元素选择器
D:类选择器
知识点:基础选择器:id选择器、元素/标签选择器、类选择器、通配符选择器、组合选择器
 

鼠标事件

3. JQuery中,属于鼠标事件方法的选项是( )(单选)
onclick( )
mouseover( )
onmouseout( )
blur( )
参考答案:BD
题目解析:
A、C:onclick是绑定的事件(它是一个事件),onmouseout( ),JacaScript中的鼠标事件。带“on”的
click方法(jquery中的)作用是触发onclick事件,实际上是模拟了鼠标的点击动作。此外,如果在click括号内定义了其他可执行语句,则click方法会在执行完onclick事件之后执行括号内部的语句。
知识点:jQuery中的鼠标事件
1、click(单击事件),2、dbclick(双击事件),3、mousedown(鼠标按下事件)
4、mouseup(鼠标弹起事件),5、mouseenter(鼠标移入事件),6、mouseleave(鼠标移出事件)等
 
 

隐藏元素

4. 若要求隐藏<span>元素,则下列选择正确的是( )
$("span").css("dispaly","none")
$("span").addClass("dispaly","none");
$("span").show( )
$("span").hide( )
参考答案:A,D
题目解析:
.css() 获取匹配元素集合中的第一个元素的样式属性的值设置每个匹配元素的一个或多个CSS属性。
.addClass(className) 不会替换一个样式类名。只添加一个样式类名到元素上。
.show() 显示匹配的元素      .hidden() 隐藏匹配的元素。
 

.css()

5. 在jQuery中,通过jQuery对象.css( )可实现样式控制,以下说法正确的是( )
css( )方法会去除原有样式而设置新样式
正确语法:css(“属性”,”值”)
css( )方法不会去除原有样式
正确语法:css(“属性”;”值”)
参考答案:A,B
 
 

fadeIn()   fadeOut()

6. 关于改变透明度动画效果,以下说法错误的是( )
fadeIn( )和fadeOut( )用于改变元素透明度。
fadeIn( )控制元素淡入,fadeOut( )控制元素淡出
fadeIn( )控制元素淡出,fadeOut( )控制元素淡入
fadeIn( )和fadeOut( )用于改变元素高度
参考答案:C,D
 

parent()   parents()

7. jQuery中,以下对遍历祖先元素的说法正确的是( )
parent( ) 获取当前匹配元素集合中每个元素的父级元素
parent( ) 获取当前匹配元素集合中每个元素的祖先元素。
parents( ) 获取当前匹配元素集合中每个元素的祖先元素。
parents( ) 获取当前匹配元素集合中每个元素的父级元素。
参考答案:A,C
 
 
三、判断题 
 

.after .insretAfter

1. $(A).after(B)表示将A插入到B以后
参考答案:B
题目解析:
brother.after(content)   (A).after(B)    将B插入到A以后
obj.insertAfter(target)   (B).insertAfter(A)    将B插入到A以后
对于 .after(), 选择表达式在函数的前面,参数是将要插入的内容。
对于.insertAfter(), 刚好相反,内容在方法前面,它将被放在参数里元素的后面。
 

deep深度监听

2. 如果 watch 侦听的是一个对象,如果对象中的属性值发生了变化,也可以被监听到
参考答案:B
题目解析:
为了发现对象内部值的变化,可以在选项参数中指定 deep: true
注意监听数组的变更不需要这么做。
 

计算属性

3. 计算属性中动态计算出来的属性值不可以被 methods 方法使用
参考答案:B

 
4. 组件之间的最常见的关系分为父子组件、兄弟组件
参考答案:A
 

父子组件

5. 子组件只能在父组件内部使用
参考答案:A
题目解析:

在一个组件内定义另一个组件,称之为父子组件。

1.子组件只能在父组件内部使用(写在父组件tempalte中);

2.默认情况下,子组件无法访问父组件上的数据,每个组件实例的作用域是独立的。

 

.val()

6. val( )方法获取或设置元素的value属性值
B、 错
参考答案:A
 

.append 和 .appendTo

7. $(A).appendTo(B)表示把A追加到B中
参考答案:A
题目解析:

.append( content)     (B).append(A)       A追加到B

.appendTo( target )   (A).appendTo(B)   A追加到B

对于.append(), 选择器表达式在函数的前面,参数是将要插入的内容。
对于.appendTo()刚好相反,内容在方法前面,无论是一个选择器表达式 或创建作为标记上的标记,它都将被插入到目标容器的末尾。
 

v-bind

8. 使用v-bind指令进行DOM属性绑定
参考答案:A
 

v-else

9. v-else 不一定需要跟在带 v-if 的后面也可以使用
参考答案:B
题目解析:v-else 前一兄弟元素必须有 v-if 或 v-else-if
 

v-on

10. v-on只可以绑定一种方法
B、 错
参考答案:B
题目解析:
1、v-on绑定多个方法(采用的是对象形式)
<button v-on="{click: clickMethds, mousemove: mouseMethods}">按钮<button>
2、一个事件绑定多个方法
<button @click="click1,click2"></button>
 

$

11. Jquery中的美元符号其实是jQuery的别名,所以在代码中可以用jQuery代替美元符号
参考答案:A
题目解析:jQuery() — 这个也可以写成 $() 
通过提供的选择器检索任何DOM元素并且通过这些元素创建一个新的jQuery对象
 

ajax

12. ajax技术是一种客户端技术。
B、 错
参考答案:A
 
 
 
13. jquery功能强大,能完全取代Javascrip
参考答案:B
 
 
 
14. 相对于javascript,jquery语法更为简单,能大幅提高开发效率
参考答案:A
 
 

15. $('h2').attr('value,'asdf')执行时,由于h1~h6元素没有value属性,所以该代码不会产生任何效果

参考答案:A
 
 
四、简答题
 
1. 请问GET和POST请求方式有什么不同
1、get通过url传出数据,post通过请求体
2、get请求参数有长度限制,post理论上没有长度限制
3、get请求不安全,post相对安全
4、get请求存在缓存,post不存在缓存问题
posted @   carat9588  阅读(1337)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示