zoukankan      html  css  js  c++  java
  • 170401牛客网web前端答题

    *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)的基本元素,只能容纳文本或者其它内联元素。 

    行内元素:
     

    3.块级元素与行内元素的区别
    (1)块级元素会独占一行,其宽度自动填满其父元素宽度;
    行内元素不会独占一行,相邻的行内元素会排列在同一行,直至一行排不下才会换行,其宽度随元素的内容而变化。
    (2)块级元素可以包含行内元素和块级元素;行内元素不能包含块级元素。
    (3)行内元素设置width、height、margin-top、margin-bottom、padding-top、padding-bottom无效。
     
    4. 块级元素与行内元素的转换
      display:inline-block;
      display:inline;
      display:block;

    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 对象包含有关浏览器的信息

    解析:

      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

    解析:

      常用的页面的图片格式有三种,GIF、JPG、PNG。 
      GIF 意为Graphics Interchange format(图形交换格式); 
      JPEG 代表Joint Photograhic Experts Group(联合图像专家组),这种格式经常写成JPG,JPG图片的扩展名为jpg;
      流式网络图形格式(Portable Network Graphic Format,PNG)名称来源于非官方的“PNG's Not GIF”,是一种位图文件(bitmap file)存储格式,读成“ping”。PNG用来存储灰度图像时,灰度图像的深度可多到16位,存储彩色图像时,彩色图像的深度可多到48位,并且还可存储多到16位的α通道数据。
      标签图像文件格式 ( Tagged Image File Format ,简写为 TIFF )是一种灵活的 位图 格式,主要用来存储包括照片和艺术图在内的图像。 TIFF文件格式适用于在应用程序之间和计算机平台之间的交换文件,它的出现使得图像数据交换变得简单。 TIFF文件以 .tif 为扩展名。其数据格式是一种3级体系结构,从高到低依次为:文件头、一个或多个称为IFD的包含标记指针的目录和数据。 

    *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

    解析:

      A:box-shadow: [<颜色><水平偏移><纵向偏移><模糊半径>] || [<水平偏移><纵向偏移><模糊半径><颜色>];
    说明:
    (1) <颜色>和<模糊半径>是可选的, 当<颜色>未指定时, 将使用文本颜色; 当<模糊半径>未指定时, 半径值为0;
    (2) shadow可以是逗号分隔的列表, 如:
         box-shadow: 2px 2px 2px #ccc, 3px 3px 3px #ddd;
    (3) 阴影效果会按照shadow list中指定的顺序应用到元素上;
    (4) 这些阴影效果有可能相互重叠, 但不会叠加文本本身;
    (5) 阴影可能会跑到容器的边界之外, 但不会影响容器的大小.
     
      B:阴影的参数格式和box-shadow相同;
     
      C:border-radius: r; Box的四个角可以由边框半径来设置弯曲度,其定义方式和border属性类似;
      D:rgba(0-255,0-255,0-255,0-1) 

    前三个数值是 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".value=="")){
                    alert("没有输入用户名!");
                    return false;
                }else if(document.getElementById("password").value==""){
                    alert("没有输入密码!");
                    return false;
                }else{
                    return true;
                }
            }
  • 相关阅读:
    第三章函数
    基本数据类型
    gulp压缩js
    read/load
    jQuery的类数组对象结构
    立即调用表达式
    npm
    cocos2d.js
    图片上传后压缩 Thinkphp
    判断用户是否在微信中
  • 原文地址:https://www.cnblogs.com/liao13160678112/p/6656848.html
Copyright © 2011-2022 走看看