首页 > 代码库 > 170401web前端答题
170401web前端答题
*wrong
1.jquery ajax中都支持哪些返回类型?(A,B,C,D)
A.xml B.html C.jsonp D.json
解析:
$ajax()函数依赖服务器提供的信息来处理返回的数据。如果服务器报告说返回的数据是XML,那么返回的结果就可以用普通的XML方法或者jQuery的选择器来遍历。如果见得到其他类型,比如HTML,则数据就以文本形式来对待。
通过dataType选项还可以指定其他不同数据处理方式。除了单纯的XML,还可以指定html、json、jsonp、script或者text。
*true
2.下面哪些语句可以在JS里判断一个对象oStringObject是否为String。(A)
A.oStringObject instanceof String
B.typeof oStringObject == ‘string‘
C.oStringObject is String
D.以上答案都不正确
解析:
//判断是否为String function isString(str){ return ((str instanceof String)||(typeof str)==‘string‘); }
js 中的基本类型只有number/string/boolean/object/null/undefined,而String、Number、Array等只能算子类型,String 类型与string类型是不一样的。
题目问的是是否为String这种子类型,所以只能通过instanceof或者Object.prototype.toString.call(obj)===‘[Object String]‘来判断。
*wrong
3.常见的浏览器端的存储技术有哪些?(A B D)
A.cookie B.localStorage C.session D.userData
解析:
cookie是靠谱的浏览器都支持;
localStorage比cookie存的更多,获取更方便,而且存储内容不会随便发送给服务器;
session虽然需要cookie支持(通常存放加密过的sessionId),但是不在浏览器端存放主要信息,排除;
IE支持userData存储数据,但是基本很少使用到,除非有很强的浏览器兼容需求。
*wrong
4.如何规避javascript多人开发函数重名问题。
A.根据不同的开发人员实现的功能,在函数名加前缀
B.每个开发人员都把自己的函数封装到类中,然后调用的时候即使函数名相同,但是因为是要类.函数名来调用,所以也减少了重复的可能性
C.以上都不正确
解析:
js的类概念就是封装的函数。
*wrong
5.下面属于javascript基本数据类型的有?(A B C D)
A.字符串 B.数字 C.null D.undefined
解析:
js五种基本类型:Undefined,Null,Boolean,Number和String
typeof六种返回格式:
(1)undefined——未申明,或者变量的值即为undefined或者未初始化;
(2)boolean——如果这变量的值是布尔类型;
(3)string——值是字符串类型;
(4)number——值是数字类型;
(5)object——对象或值为null;
(6)function——函数。
*true
6.下面有关html结构描述正确的有?(A B D)
A.<ul> <li> </li> </ul>
B.<ol> <li> </li> </ol>
C.<dl><dt><dd></dd></dt></dl>
D.<table> <tr> <td></td> </tr> </table>
解析:
dt和dd是同级元素,不能用dt包含dd。
<li> 标签定义列表项目。
<li> 标签可用在有序列表 (<ol>) 和无序列表 (<ul>) 中。
<dl>标记定义了一个定义列表,定义列表中的条目是通过使用<dt>标记(“definition title”,定义标题)和<dd>标记(“definition description”,定义描述)创建的。<dt>给出了术语名,<dd>标记给出了术语的定义。
<table>代表表格</table>
<tr>代表表格中的一行</tr>
<td>代表表格中的一列</td>
*wrong
7.在bootstrap中,关于导航条,下列说法正确的是?(A B C D)
A.应该将被包裹的元素放到navbar-collapse类中
B.表单应该放置于navbar-form内
C.可以使用navbar-left和nav-right来对齐导航条
D.可以使用navbar-fixed-top和navbar-fixed-bottom来将导航条固定到顶部或底部
解析:
为了给导航栏添加响应式特性,您要折叠的内容必须包裹在带有 class .collapse、.navbar-collapse 的 <div> 中。
折叠起来的导航栏实际上是一个带有 class .navbar-toggle 及两个 data- 元素的按钮。第一个是 data-toggle,用于告诉 JavaScript 需要对按钮做什么,第二个是 data-target,指示要切换到哪一个元素。
三个带有 class .icon-bar 的 <span> 创建所谓的汉堡按钮。这些会切换为 .nav-collapse <div> 中的元素。为了实现以上这些功能,您必须包含 Bootstrap 折叠(Collapse)插件。
导航栏中的表单不是使用 Bootstrap 表单 章节中所讲到的默认的 class,它是使用 .navbar-form class。这确保了表单适当的垂直对齐和在较窄的视口中折叠的行为。使用对齐方式选项(这将在组件对齐方式部分进行详细讲解)来决定导航栏中的内容放置在哪里。
您可以使用实用工具 class .navbar-left 或 .navbar-right 向左或向右对齐导航栏中的 导航链接、表单、按钮或文本 这些组件。这两个 class 都会在指定的方向上添加 CSS 浮动。 Bootstrap 导航栏可以动态定位。默认情况下,它是块级元素,它是基于在 HTML 中放置的位置定位的。通过一些帮助器类,您可以把它放置在页面的顶部或者底部,或者您可以让它成为随着页面一起滚动的静态导航栏。
如果您想要让导航栏固定在页面的顶部,请向 .navbar class 添加 class .navbar-fixed-top。 如果您想要让导航栏固定在页面的底部,请向 .navbar class 添加 class .navbar-fixed-bottom。
*wrong
8.以下是行内元素的有(A B)
A.span B.input
C.ul D.p
解析:
大多数 HTML 元素被定义为块级元素或内联元素。“块级元素”译为 block level element,“内联元素”译为 inline element。
1.块级元素 在浏览器显示时,通常会以新行来开始(和结束)。块级元素按照其应用于结构还是内容分为三种:结构化块状元素,终端块状元素,多目标块状元素。
结构化块状元素: 这类元素用于构造文档的结构,没有语义上的含义,仅仅划分出了文档的组织方式,并没有体现文档的内容。
终端块状元素: 这类元素用于从结构转向内容,拥有语义上的含义,能够表明内容的性质。终端块状元素属于结构的终点,它们不能再包含其他块级元素,只能包含文本或行级元素。
多目标块状元素: 多目标指的是可以自由的扩展或嵌套文档的结构,以可以终端的形式出现。当多目标块状元素以结构化的方式使用时就含有结构化的内涵,以终端的形式使用就含有语义的内涵。
块级元素:
2.内联元素 (inline element)或称为行内元素 一般都是基于语义级(semantic)的基本元素,只能容纳文本或者其它内联元素。
行内元素:
5.可变元素
*wrong
9.下面关于IE、FF下面脚本的区别描述错误的是?(B D)
A.innerText IE支持,FIREFOX不支持
B.document.createElement FIREFOX支持,IE不支持
C.setAttribute(‘class‘,‘styleClass‘) FIREFOX支持,IE不支持
D.用setAttribute设置事件 FIREFOX不支持,IE支持
*wrong
10.下面有关javascript内部对象的描述,正确的有?
A.History 对象包含用户(在浏览器窗口中)访问过的 URL
B.Location 对象包含有关当前 URL 的信息
C.Window 对象表示浏览器中打开的窗口
D.Navigator 对象包含有关浏览器的信息
解析:
Window:Window对象处于对象层次的最顶层,它提供了处理Navagator窗口的方法和属性
Location:提供了与当前打开的URL一起工作的方法和属性,是一个静态的对象
History:提供了与历史清单有关的信息
Document:包含与文档元素一起工作的对象,它将这些元素封装起来供编程人员使用
*wrong
11.假设当前屏幕分别率为1024×768,定义一个居中的占屏幕一半大小的表格的语句是(A B C D)
A.<TABLE ALIGN="CENTER" WIDTH="50%"></TABLE>
B.<TABLE ALIGN="CENTER" WIDTH="512"></TABLE>
C.<DIV ALIGN="CENTER"><TANLE WIDTH="512"></TABLE></DIV>
D.<CENTER><TABLE WIDTH="50%"></TABLE></CENTER>
*wrong
12.嵌入在HTML文档中的图像格式可以是?(A C D)
A.*.gif
B.*.tif
C.*.bmp
D.*.jpg
解析:
*wrong
13.关于h标签
<h1>h1. Bootstrap heading <small>Secondary text</small></h1>
以下说法正确的是(A D)
A.<h1>最大
B.<h6>最大
C.<small>用法错误
D.<small>表示副标题
*wrong
14.下面属于CSS3新增属性的有?(A B C D)
A.box-shadow
B.text-shadow
C.border-radius
D.rgba
解析:
前三个数值是 RGB 颜色的值, 最后一个数值指代的是元素的透明度 (0 表示透明, 1 表示不透明).
*wrong
15.问一份标准的HTML文档有哪几个必须的HTML标签?(A B C D)
A.<html> B.<head>
C.<title> D.<body>
解析:
一份标准的HTML文档。
*wrong
16.请给Array本地对象增加一个原型方法,它用于删除数组条目中重复的条目(可能有多个),返回值是一个包含被删除的重复条目的新数组。
解析:这个有点难以理解的说。。
<script> Array.prototype.distinct=function(){ var ret=[]; for(var i=0;i<this.length;i++){ //indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。 if(this.indexOf(this[i]!=i)){ //push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。 ret.push(this[i]); } } return ret; } alert([‘a‘,‘b‘,‘c‘,‘d‘,‘b‘,‘"a"‘,‘e‘,‘1‘,‘2‘,‘3‘,‘2‘,‘"3"‘].distinct()); </script>
*wrong
17.请填充代码,使mySort()能使传入的参数按照从小到大的顺序显示出来。
function mySort() { var tags = new Array();//使用数组作为参数存储容器 请补充你的代码 return tags;//返回已经排序的数组 } var result = mySort(50,11,16,32,24,99,57,100);/传入参数个数不确定 console.info(result);//显示结果
解析:
<script> function mysort(){ var tags=new Array(); //在JavaScript中,arguments是对象的一个特殊属性。arguments对象就像数组,但是它却不是数组。 //属性length, 获取arguments对象的长度。 for(var h=0;h<arguments.length;h++){ tags.push(arguments[h]) }
//冒泡排序 for(var i=0;i<tags.length;i++){ for(var j=i+1;j<tags.length;j++){ if(tags[i]>tags[j]){ var temp=tags[i]; tags[i]=tags[j]; tags[j]=temp; } } } //alert(tags); return tags; } var result = mysort(50,11,16,32,24,99,57,100); console.info(result);//显示结果 </script>
虽然这个不符合题意,但排了序:
<script> Array.prototype.distinct=function(){ for(var i=0;i<this.length;i++){ for(var j=i+1;j<this.length;j++){ if(this[i]>this[j]){ var temp=this[i]; this[i]=this[j]; this[j]=temp; } } } return this; } alert([50,11,16,32,24,99,57,100].distinct()); </script>
*wrong
18. 用javascript实现用户登录验证的代码。
解析:不标准之答案
function check(){ if(document.getElementById("username".valuehttp://www.mamicode.com/=="")){ alert("没有输入用户名!"); return false; }else if(document.getElementById("password").valuehttp://www.mamicode.com/==""){ alert("没有输入密码!"); return false; }else{ return true; } }
170401web前端答题