前端笔试2

2023-09-17 23:19:35

1.下面哪一个是检验对象是否有一个以自身定义的属性?

  • foo.hasOwnProperty("bar")
  • bar in foo 
  • foo["bar"] !== undefined
  • foo.bar != null

解析:

`bar in foo` 检查 `foo` 对象是否包含名为 `bar` 的属性,但是这个属性可以是从原型链继承来的,因此不是检验对象是否有一个以自身定义的属性的正确方法。

`foo["bar"] !== undefined` 和 `foo.bar != null` 都可以检查对象是否有一个名为 `bar` 的属性,但是它们不能区分该属性是否是从原型链继承来的。因此,它们也不是检验对象是否有一个以自身定义的属性的正确方法。

2.如何返回下面的数组的第一个值?
var myArr = [1, 2, 3, 4, 5];

var myVal =

  • myArr.unshift();                       将指定元素插入数组开头,并返回新数组长度
  • myArr[1];                                 返回第二个元素
  • myArr.shift():                            删除并返回第一个元素
  • myArr.pop();                             删除并返回最后一个元素

扩展知识(数组的操作):

 1. `concat()`:连接两个或多个数组,并返回结果。
2. `copyWithin()`:从数组的指定位置拷贝元素到数组的另一个指定位置中。
3. `entries()`:返回数组的可迭代对象。
4. `every()`:检测数值元素的每个元素是否都符合条件。
5. `fill()`:使用一个固定值来填充数组。
6. `filter()`:检测数值元素,并返回符合条件所有元素的数组。
7. `find()`:返回符合条件的第一个元素的值。
8. `findIndex()`:返回符合条件的第一个元素的索引。
9. `forEach()`:调用数组中的每个元素,并将元素传递给回调函数。
10. `includes()`:判断数组是否包含某个指定的值,如果是返回 true,否则返回 false。
11. `indexOf()`:搜索数组中的元素,并返回它所在的位置。
12. `join()`:把数组中所有元素放入一个字符串。
13. `keys()`:返回数组可迭代对象的新 Array Iterator 对象。
14. `lastIndexOf()`:从后向前搜索数组中的元素,并返回它所在的位置。
15. `map()`:通过指定函数处理数组中的每个元素,并返回处理后的新数组。
16. `pop()`:删除并返回数组的最后一个元素。
17. `push()`:向数组末尾添加一个或多个元素,并返回新的长度。
18. `reduce()`:将数组元素计算为一个值(从左到右)。
19. `reduceRight()`:将数组元素计算为一个值(从右到左)。
20. `reverse()`:颠倒数组中元素的顺序。
21. `shift()`:删除并返回数组的第一个元素。
22. `slice()`:选取数组中的一部分,并返回一个新数组。
23. `some()`:检测数值元素是否满足指定条件,如果有任意一个满足则返回 true,否则返回 false。
24. `sort()`:对数组进行排序(按字母顺序升序)。
25. `splice()`:删除或替换指定位置的元素,并可添加新元素,同时返回被删除/替换的项目¹.
26. `toLocaleString()`:把数组转换为本地字符串,并返回结果字符串.
27. `toString()`:把数组转换为字符串,并返回结果字符串.
28. `unshift()`:向数组开头添加一个或多个元素,并返回新长度.

 3、True+True的结果是?

  • true
  • undefined
  • 2

解析:当使用 `+` 运算符将两个布尔值相加时,它们会被转换为数字。在 JavaScript 中,`true` 转换为 `1`,而 `false` 转换为 `0` 。因此,`True+True` 的结果是 `1+1`,即 `2`。

 4、文本域的type设为___,可以创建单选按钮

  • radio
  • checkbox
  • text

解析:文本域是一种多行文本输入控件,它使用 `<textarea>` 标签来定义。文本域没有 `type` 属性,因此不能将其设置为单选按钮或复选框。如果您想创建单选按钮,可以使用 `<input>` 标签并将其 `type` 属性设置为 `radio`。如果您想创建复选框,可以使用 `<input>` 标签并将其 `type` 属性设置为 `checkbox`。(题目有点表达错误,勉强选radio)

扩展知识(文本域的属性): 

`<textarea>` 标签有以下属性:

- `cols`:指定文本区域中可见的列数。
- `dirname`:指定文本区域中文本的方向。
- `disabled`:禁用文本区域。
- `form`:指定文本区域所属的表单。
- `maxlength`:指定文本区域中允许输入的最大字符数。
- `name`:指定文本区域的名称,用于提交表单数据。
- `placeholder`:指定在用户输入内容之前在文本区域中显示的提示信息。
- `readonly`:指定文本区域为只读模式,用户无法编辑其中的内容。
- `required`:指定文本区域为必填项,用户必须填写其中的内容。
- `rows`:指定文本区域中可见的行数。
- `wrap`:指定当用户输入内容超出文本区域时如何换行。

5.html5中使用属性来给用户输入前提示

  • help
  • msg
  • tips
  • placeholder

解析:在 HTML5 中,可以使用 `placeholder` 属性来为用户输入前提供提示信息。该属性可以用于 `<input>` 和 `<textarea>` 标签,它指定了一个短的提示,描述了输入字段的预期值。该提示在用户输入值之前显示在输入字段中,并在用户开始输入时自动消失。请注意,`placeholder` 属性只适用于以下输入类型:`text`、`search`、`url`、`tel`、`email` 和 `password` 

6.图片标签是

  • image
  • gif
  • img
  • jpeg

解析:

7.___标签定义了html的主体

  • head
  • meta
  • html
  • body

解析:

9.下面语句的结果是什么? 0 ==““

  • true

  • 抛出异常,不合法的比较操作

  • false

  • null

解析:

10.在web应用中使用Ajax技术的主要好处是

  • Ajax使创建可访问的(正常人和身体有缺陷的人都可用) web页面更容易
  • Ajax支持web应用向服务器发送异步数据请求,而不用重加数页面
  • Ajax让web应用“更先进”
  • Ajax让web应用更容易被Google、Yahoo和Bing等搜索引擎更容易抓取

解析:

12.以下哪个doctype是用来表示html5的

  • <!DOCTYPE html>
  • <!DOCTYPE HTMLPUBLIC"-JW3C/DTD HTML5 Transitional/EN""http:wngTRhtmitoo
  • <!DOCTYPE html5>
  • <!DOCTYPE HTML PUBLIC "-JW3C/DTD HTML .01 Transitional/EN”"hp:l.gTR/htmiAoos.dd> 

解析:

13.根据ECMAScript规范,下面哪一个不是“JSON”对象中的方油

  • JSON.parse
  • JSON.fromString
  • JSON.stringify

解析:

14.null,undefined,"string”,20,true和false的共同点是什么?

  • 都有相同的实例属性
  • 都是原始值
  • 都是对象
  • 都是函数 

解析:

15.执行 +new Date()、将会得到:

  • 以毫秒表示的Unix时间戳(UTC 时区)
  • 以毫秒表示的Unix时间戳(本地时区)
  • Unix纪元(1970-01-0100:00:00)
  • 报SyntaxError 

解析:

16.var a = function(){};

a()返回什么?

  • 不是合法的JavaScript 语法
  • 会报错
  • null
  • undefined 

解析:

 17、AJAX的长轮询(long-polling) 的目的是什么

  • 支持跨域传输数据
  • 在执行客户端代码之前校验服务端能力
  • 在Ajax驱动的web应用中支持离线功能
  • 保持与服务器的双向连接

解析:

18.var a={1:'one',2:'two',3:'three'}; var b= Object.keys(a); b内值是什么?

  • 一个数组,值为对象a的全部不相同的key
  • 对象a的序列化副本
  • 一个对象,自动生成了get和set方法来获取它的keylvalue
  • 这些都不是

解析:

19.要显示一个提交按钮,可以用以下哪种形式?

  • <input type="submit"/>
  • 以上两种都可以
  • <input type="submit”value="提交"/> 

解析:

20.执行以下程序段后,x的值是

var x=0;

switch (++x){

case 0: ++x;

case 1: ++x;

case 2:++x;

  • 3
  • 2
  • 4

解析:

21.var x=typeof NaN;执行上面的代码,x的值是

  • "double"
  • "number"
  • "object"
  • "integer" 

解析:

22.htm15中使用标签来播放音频

  • Awav
  • sound
  • mp3
  • audio 

解析:

23.什么是XSS?

  • 恶意的客户端代码注入
  • 帮助编写Ajax驱动应用的开发框架
  • 一种扩展样式,与Ajax一起使用
  • 一个JavaScript渲染(rendering)引擎 

解析:

24.htmI5中使用属性来限制某个输入域为必填项?

  • input
  • requery
  • mustinput
  • required

解析:

 25.要表示一个文本为hello的按钮,可以用以下哪种写法?

  • <button>Hello</button>
  • 以上两种都可以
  • <input type="button" value="Hello">

解析:

26.jQuery中,哪个方法可以用来将一个事件的handler绑定到已存在和以后匹配的元寨

  • click();
  • attach();
  • .on();
  • bind();

解析:

27.下面哪个选项往数组插入了一个新值?

  • arr + [arr.length] = x;
  • Array.push(arr, x);
  • arr[arr.length] = x;
  • arr.end(); arr.value =x ;
  • arr.length + arr = x;  

解析:

28.htmI5中使用属性来提供正则表达式验证

  • zhengze
  • modal
  • regexp
  • pattern 

解析:

29.Ajax中,当下列____发生时,onreadystatechange事件会调用一个action

  • 在弹出的对话框中,用户表示已准备好继续进行
  • 用户离开页面,未保存或未提交变更
  • 异步请求的状态发生了变化
  • 浏览器窗口关闭或者调整了尺寸

解析:

30.html的注释用

  • //
  • #
  • /** */
  • <!---->

解析:

31.在一个Ajax驱动的web应用中,保持向后/向前按钮和爬虫功能,推荐用什么方法?

  • URL中使用< or>
  • window.location()
  • history.pushState()
  • 没有有效方法 

解析:

32.每个对象都与对象保持链援接,从它那里继承属性

  • prototype
  • parent
  • argument
  • silbing

解析: 

33.数组原型的sort0)方法,支持按什么排序?

  • 按字母升序
  • 按字母降序
  • 按ASCII排序
  • 全都可以

描述:

34.创建Poreon的一个实例,下面哪一个是正确的

  • var john = new Person('John', 'Doe', 50, "blue');
  • Person john = new Person('John', 'Doe', 50, "biue');
  • var Person john = new Person('John', 'Doe', 50, "blue'):
  • new john = Person('John', 'Doe', 50, blue');

解析:

35.<function>.call and <function>.apply 方法的主要区别是什么?

  • 他们是相同的
  • <function>.call 以数组作为参数,<function>.apply的参数列可变
  • 其他未列出的区别
  • <function>.call的参数列可变,<function>.apply 以数组作为参数

解析: 

36.使用call()、apply() 调用多入参国数的区别是

  • 完全相同
  • apply()已被废弃了,用call()替代
  • apply()和 cal()基本相同,除了call)需要一个数组作为第二个参数
  • appIy()和 call0)基本相同,除了apply()需要一个数组作为第二个参数 

37.分析如下的javascript代码段,则运行后在页面上输出 ()

  • var c="10",d=10;
  • documentwrite(c+d):
  • 10
  • 页面报错
  • 1010

解析: 

38.当计算一个条件语句时,随式地会把值转换成什么类型?

  • negative
  • boolean
  • positive
  • tinyint
  • integer

39.一个CORS请求的预期响应的HTTP response是什么?

  • Accegs-Control-Allow-Origin
  • Allow-Cross-Origin-Access
  • Cross-Origin-Permissions
  • Allow-CORS 

 40.关键字"this”表示

  • 父对象,是当前函数的属主
  • 当前正在执行的函数
  • 当前执行的上下文(可以是任意值)
更多推荐

【MySQL函数篇】—— 字符串函数(超详细)

个人主页:兜里有颗棉花糖欢迎点赞👍收藏✨留言✉加关注💓本文由兜里有颗棉花糖原创收录于专栏【MySQL学习专栏】🎈本专栏旨在分享学习MySQL的一点学习心得,欢迎大家在评论区讨论💌前言本文我们来学习一下MySQL中的字符串函数。以下是本文中要讲解的字符串函数:函数功能CONCAT(S1,S2,S2,…)拼接字符串

【数据结构】树和二叉树的概念及结构

大家好!今天我们来学习数据结构中树和二叉树的概念及结构。目录1.树概念及结构1.1树的概念1.2树的相关概念1.3树的表示​1.4树在实际中的运用2.二叉树的概念及结构2.1概念​2.2现实中的二叉树2.3特殊的二叉树2.3.1满二叉树2.3.2完全二叉树2.4二叉树的性质2.5二叉树的存储结构2.5.1顺序存储2.5

【MySQL系列】MySQL数据库索引详解

目录一、为什么要用索引?二、什么是索引?三、MySQL索引使用场景四、索引的原理五、MySQL的存储引擎六、索引的数据结构七、索引如何使用八、实际使用示例九、优缺点、使用建议和注意事项十、为什么Mysql不选择Hash索引?十一、总结一、为什么要用索引?索引,可能让好很多人望而生畏,毕竟每次面试时候MySQL的索引一定

某网站小说CSS反爬实战分析

由于是刚开始编写js逆向类型的文章,难免会有不详细之处,敬请谅解本次的目标是hongshu网的小说接口,我们进入官网随意找到一篇小说后,打开网络请求,分析接口如图,可以看到有个bookajax.do的接口让人值得怀疑,而且有三个接口,初步判断可能是接口之间进行互相调用,我们先打开接口查看一下数据在第二个接口中看到如下数

Docker Compose部署Mysql8

DockerCompose部署Mysql8介绍MySQL是一个广泛使用的开源关系型数据库管理系统,它被用于许多Web应用程序的数据存储和管理。MySQL提供了高性能、可靠性和灵活性,让开发者能够轻松处理各种规模的数据处理需求。下面是一些关于MySQL的重要特点和功能:关系型数据库:MySQL是一个基于关系模型的数据库管

Flutter快速入门学习(二)

目录Dart介绍一些Dart的重要概念Dart语法学习变量内建类型NumberStringBooleanListSetMapSymbol函数参数类型(可选参数,必选参数)函数作为另一个函数的参数匿名函数运算符关系运算符类型判定运算符赋值运算符逻辑运算符按位和移位运算符条件表达式级联运算符(..)回调函数Dart介绍Da

#循循渐进学51单片机#变量进阶与点阵LED#not.6

1、掌握变量的作用域及存储类别。局部变量函数内部声明的变量,只在函数内部有效,在本函数以外是不能使用的,叫局部变量。全局变量在函数外部声明的变量就是全局变量,一个源程序可以包含一个或多个函数,全局变量的作用范围是从它开始声明的位置一直到程序结束。全局变量的副作用1)降低函数的独立性,对任何一个函数的修改都可能影响到其他

EMANE中olsrd的调试

1调试目的本着学习的态度,对emanetutorial中的示例程序进行重现,以加深对EMANE的理解和掌握。在示例程序0(见https://github.com/adjacentlink/emane-tutorial/wiki/Demonstration-0)中介绍了使用olsrlinkview.py脚本来通过可视化界

git命令的操作

git命令操作及命令大全1.创建一个新的本地仓库:2.添加文件到仓库:3.远程仓库操作:4.分支操作:5.git命令大全1.创建一个新的本地仓库:使用命令gitinit在本地目录中创建一个新的git仓库。2.添加文件到仓库:使用命令gitadd<文件名>将文件添加到暂存区。使用命令gitcommit-m"提交信息"将文

新款 锐科达 SV-2102VP SIP广播音频模块 RTP流音频广播

新款锐科达SV-2102VPSIP广播音频模块RTP流音频广播SV-2102VP和SV-2103VP网络音频模块是一款通用的独立SIP音频功能模块,可以轻松地嵌入到OEM产品中。该模块对来自网络的SIP协议及RTP音频流进行编解码。本系列模块可以应用于以下领域:•各种商业网络音频流应用•网络报警器,网络播放器•用于寻呼

计算机视觉与深度学习-图像分割-视觉识别任务03-实例分割-【北邮鲁鹏】

目录参考定义MarkR-CNN结构思路MaskR-CNN训练阶段使用的Mask样例MaskR-CNN实例分割结果MaskR-CNN检测姿态参考论文题目:MaskR-CNN论文链接:论文下载论文代码:Facebook代码链接;Tensorflow版本代码链接;KerasandTensorFlow版本代码链接;MxNet版

热文推荐