js试题及答案(四)

一、单选题(共30题,每题2分)
1.闭包的好处说法不对的

A 缓存变量

B 防止命名冲突

C 可能造成内存泄露

D 减少内存使用率

解析:

2.不能进行强制类型转化的为
A parseInt
B parseFloat
C Number
D Math.floor
正确答案: D

3.alert(username);var username=“leson”;结果为

A undefined

B leson

C null

D 报错

正确答案: A
解析:
变量提升,预解析

4.不属于常见23种设计模式
A 单例
B MVC
C 观察者
D 策略
正确答案: B

5.以下哪一个不是常见的设计模式

A 单例模式

B 代理模式

C 飞行模式

D 观察者模式

正确答案: C
解析:
飞行模式,手机里才有的模式!!

6.有代码 var name = ‘global’; var obj = { name : ‘obj’, dose : function(){ this.name = ‘dose’; return function(){ return this.name; } } } console.log(obj.dose().call(this)); 问在控制台打印的结果为

A global

B obj

C dose

D undefined

正确答案: A
解析:
obj.dose().call(this)

obj.dose()返回的是函数function(){ return this.name; }

call(this)是调用了函数function(){ return this.name; } 并且使用window改变了函数中的this,所有this.name就是window.name

7.下列哪一项不是jquery进行文档操作的方法

A append()

B inner()

C wrap()

D clone()

正确答案: B
解析:
inner() 不是

8.关于jquery插件,描述错误的是

A 使用jquery插件可以提高开发效率

B jquery插件可以通过jquery对象调用

C jquery插件无法实现链式调用

D jquery插件一般都需要考虑参数设置问题

正确答案: C
解析:
只要返回值是jq中的对象,就可以链式调用

9.以下不是闭包特点的是

A 函数嵌套函数

B 函数内部可以引用外部的参数和变量

C 参数和变量不会被垃圾回收机制回收

D 返回的函数可以不用存储在外部变量中

正确答案: D
解析:
返回的函数必须存储在外部变量中

10.以下函数执行的结果是 function fun1(x) { if(x>2){ return (fun1(x-1)+fun1(x-2)); }else{ return 1; } } console.log(fun1(10));

A 50

B 52

C 55

D 60

正确答案: C
解析:
这是一个回调函数的使用

11.以下程序最后计算的结果是 function fun1(){ var sum=1; return function(){ sum++; return sum; } } var fun2=fun1(); console.log(fun2()); console.log(fun2());

A 1,1

B 1,2

C 2,3

D 2,2

正确答案: C
解析:
这是闭包的使用

12.函数使用return不能返回以下哪一个

A 函数

B 对象

C 数值

D for循环

正确答案: D
解析:
函数只能返回数据不能返回循环

13.下列代码输出的结果是 var a; var a = [1,2,3]; function a(a){ a[1] = 5; } a(a); console.log(a);
A [1,2,3]
B [1,5,3]
C 报错
D undefined
正确答案: C
解析:

14.var obj = {1 : 1};

var arr = [1,1];

console.log(obj + arr);

A 1

B 2

C [object Object]1,1

D 1,1[object Object]

正确答案: C
解析:

15.下列箭头函数书写正确的是
A 0–{}
B a,b => {}
C _ =>
D caller
正确答案: C
解析:

16.在构造函数中,可以在一个属性后添加方法,该属性为

A  _prototype_
B  prototype
C  proto
D  __prototype__

正确答案: B
解析:

17.关于设计模式,下面哪个是错误的

A 工厂方法模式

B 路由器模式

C 策略模式

D 观察者模式

正确答案: B
解析:

18.下面哪种不是jquery的选择器

A 基本选择器

B 后代选择器

C 类选择器

D 进一步选择器

正确答案: D
解析:

19.以下哪个方法不能发起异步请求

A $.get()

B $.post()

C $.json()

D $.ajax()

正确答案: C
解析:
A、B、D均是jquery类本身的异步请求方法

C选择项中的$.json()为干扰项,无此用法

20.关于jQuery框架,下列描述错误的是

A jQuery框架支持链式写法

B jQuery框架实现了跨浏览器的兼容包括IE低版本

C jQuery1.x版本支持低版本IE浏览器

D jQuery不能操作CSS3属性

正确答案: D
解析:
jQuery可以操作css3属性

21.下列哪个方法不能改变函数内部this的指向

A bind

B change

C apply

D call

正确答案: B
解析:
bind call apply均可改变this指向,注意使用的区别

22.jQuery中的delay方法的作用是

A 停止动画执行

B 暂停动画执行

C 延迟动画执行

D 开始动画执行

正确答案: C
解析:
识记题

23.关于call和apply的说法,错误的是

A call的第一个参数和apply的第一个参数一样

B call的第二个参数到最后一个参数是函数本身的参数

C 关于第二个参数,call可以写arguments,而apply则不可以

D call和apply的功能是一样的,唯一的区别是格式上的区别

正确答案: C
解析:
call的参数为参数列表,apply的参数为数组,可以用arguments表示

24.什么是闭包

A 闭包是指有权访问另一个函数作用域中的变量的函数

B 闭包是指有权访问任意函数作用域中的变量的函数

C 闭包是指有权访问全局个函数作用域中的变量的函数

D 闭包是指有权访问局部个函数作用域中的变量的函数

正确答案: A
解析:
概念题

25.原型的概念

A 每声明一个function,都有prototype原型,prototype原型是函数的一个默认属性,在函数的创建过程中由js编译器自动添加

B 每声明一个对象,都有prototype原型,prototype原型是函数的一个默认属性,在函数的创建过程中由js编译器自动添加

C 每声明一个function,都有__proto___原型,prototype原型是函数的一个默认属性,在函数的创建过程中由js编译器自动添加

D 每声明一个function,都没有prototype原型,prototype原型是函数的一个默认属性,在函数的创建过程中由js编译器自动添加

正确答案: A
解析:
原理题,每一个函数都有一个原型对象prototype

26.$(document).ready()和window.onload 有什么区别

A window.onload方法是在网页中所有的元素完全加载到浏览器后才执行,$(document).ready() 可以在DOM载入就绪是就对其进行操纵

B 没有区别

C $(document).ready()方法是在网页中所有的元素完全加载到浏览器后才执行,$(document).ready() 可以在DOM载入就绪是就对其进行操纵

D 两者作用不一样

正确答案: A
解析:
onload包含文档和资源加载完毕

ready指文档加载完毕

27.一个php后缀的文件,可以在什么环境下执行()

A mysql数据库

B 浏览器

C Apache服务器

D Windows系统

正确答案: C
解析:

28.同步和异步执行分别表示什么含义()

A 按顺序依次执行和同时分开执行

B 同时分开执行和按顺序依次执行

C 按一致的速度执行和按不同的速度执行

D 按相同的步骤执行和按不同的步骤执行

正确答案: A
解析:
生活中的同步和代码中的不一样

29.HTTP协议的默认端口号是多少?( )
A 8080
B 8888
C 80
D 3306
正确答案: C
解析:

30.以下运行的结果是false的是 function Box(){this.name=‘zhang’;} function Desk(){this.age=100;} function Table(){this.lever=1000} Desk.prototype=new Box();//通过原型链继承 var desk=new Desk(); var table=new Table();

A alert(table instanceof Object)

B alert(desk instanceof Box);

C alert(Desk instanceof Box);

D alert(desk instanceof Desk );

正确答案: C
解析:
A. 一切事物皆对象

B. Dest 继承了 Box, 所以正确

C. Desk 是 Function的实例,和Box无关

D. desk 是 Desk 的实例

二、多选题(不定项选择)(共20题,每题2分)
1.js创建对象的方式有下面哪几种
A 可以通过json方式创建对象
B 可以通过new 关键字创建对象
C 可以通过函数调用方式创建对象
D 对象不可以通过函数的调用方式创建
正确答案: A,B,C
解析:

2.下面关于构造函数的优点,描述正确的有哪些

A 构造函数可以通过new关键字创建对象,对象的创建比较规范

B 构造函数只能创建一个对象

C 可以解决多个同类对象创建时,代码重复的问题

D 构造函数创建的对象,创建出的对象是相等关系

正确答案: A,C
解析:

3.关于call,apply,bind方法,下列说法正确的是

A 三者都可以用于继承

B 三者都可以改变this指向

C 三者参数传递一样

D 三者调用方式一样

正确答案: A,B
解析:
三者都可以改变this,所有都可以是 实现继承(构造函数继承的原理是改变函数的this)

4.svn在进行版本管理时,可以实现的功能有

A 更新至某个指定的版本

B 对某个文件进行锁定

C 创建多个分支

D 对某个文件解除版本控制

正确答案: A,B,C,D
解析:
四个选项都是svn可以实现的

5.jquery中移除jquery对象的方法有

A remove

B detach

C empty

D clear

正确答案: A,B,C
解析:
前三个都可以,clear不行

6.以下说法错误的是

A 对象一般存储在栈中

B 对象是类的实例化

C 类是对象的实例化

D 类不可以继承

正确答案: A,C,D
解析:

7.对象设置属性和属性值的方法正确的是

A obj.name=3

B obj[“name”]=3

C obj{name} = 3

D Obj->name=3;

正确答案: A,B
解析:

8.下列哪种属于设计模式
A 单例模式
B 观察者模式
C mvc
D mvvm
正确答案: A,B
解析:

9.构造函数可以创建对象执行的过程是

A 当使用了构造函数,并且new 构造函数(),那么就后台执行了new Object()

B 将构造函数的作用域给新对象,(即new Object()创建出的对象),而函数体内的this 就代表new Object()出来的对象

C 执行构造函数内的代码

D 返回新对象(后台直接返回)

正确答案: A,B,C,D
解析:
这是构造函数运行时,内部执行的一个过程,请识记并理解

创建一个新对象,改变this指向,执行构造函数里的代码,返回这个新对象

10.案例代码如下: <form> <div class="big">大字体</div> <div class="small">小字体</div> </form> 请选取文本是"大字体"的div对象

A $(“div.big”);

B $(“div .big”)

C $(“div:contains(‘大字体’)”);

D $(“form > div.big”);

正确答案: A,C,D
解析:
此题考察不同选择器的用法

B选项是选取div里具有big类名(后代)的jquery对象集合

11.为什么要使用jQuery?jquery有哪些好处

A 它有强大的选择器,出色的DOM操作的封装

B 出色的浏览器的兼容性

C 完善的ajax

D 有可靠的事件处理机制

正确答案: A,B,C,D
解析:
jquery最大的特点在查询,并封装了大量的方法进行DOM操作,事件处理及ajax请求等

12.下面是设计模式的是

A 单例模式

B 观察者模式

C 测试模式

D 视图模式

正确答案: A,B
解析:
单例模式和观察者模式,是常见的设计模式

13.jq选择器有哪些

A 类

B id

C 标签

D 以上都可以

正确答案: A,B,C,D
解析:
css中的选择器都可以在jq中使用

14.在php中,下列哪些是输出(打印)函数。( )

A print

B echo

C print_r

D write

正确答案: A,B,C
解析:

15.前后端开发过程中,解决跨域的方法有那些。( )

A 后端代理

B jsonp

C xhr2

D ajax

正确答案: A,B,C
解析:

16.下面哪些是mysql的常用数据类型( )

A varchar

B int

C float

D text

正确答案: A,B,C,D
解析:

17.Jq中关于dom 增删改的操作有

A append

B appendTo

C remove

D detach

正确答案: A,B,C,D
解析:
几个都是dom操作的方法

18.下面可以实现继承的有

A 构造函数继承

B Object.create()

C 原型链继承

D es6 extends

正确答案: A,B,C,D
解析:
前三种是es5中继承,最后一个是es6的继承

19.引起跨域的情况有哪些.( )

A 域名不同

B 端口不同

C 同一域名,不同协议。

D 同一域名,同一端口,同一协议

正确答案: A,B,C
解析:
同源策略: 相同域名、端口号、传输协议

20.执行这个程序后打印的结果forEach=function (arr,fn) { for(var i=0,l=arr.length;i<l;i++){ var c=arr[i]; if(fn.call(c,i,c)===false){ return false; } } }; function box1(index,num) { console.log(index,num); } var arr=[10,9,8,7,6,5,4]; forEach(arr,box1)

A 0 10

B 3 7

C 2 4

D 5 5

正确答案: A,B,D

猜你喜欢

转载自blog.csdn.net/weixin_49299412/article/details/108097120
今日推荐