• 前端笔试题


    2018年9月14日的一次笔试题。

    JS部分:

    1,typeof [];  // "object"

    2,[].constructor == Object; // false                            [].constructor == Array ; // true

    3,请实现“<a id = "qqlink"  href = "http://www.qq.com">qq</a>”用户点击qq时不允许浏览器跳转到qq.com。

        答:event.preventDefault();

    4,

    var x = 10;
    var foo = {
        x: 20,
        bar: function() {
            var x = 30;
            return this.x;
        }
    };
    console.log( foo.bar() );  //20
    console.log( (foo.bar)() ); //20
    console.log( (foo.bar = foo.bar)() ); //10
    console.log( (foo.bar, foo.bar)() ); //10
    console.log( foo.bar.call(window)); //10
    console.log( foo.bar.call(foo) ); //20

    5,请实现函数substring(beginIndex, endIndex),不允许使用javascript标准的substring函数。

    function substring (startIndex, endIndex) {
        var str = this;
        var strArr = str.split('').splice(startIndex, endIndex-startIndex).join('');
        return strArr;
    }
    var str = "hello world";
    substring.call(str,1,4);   //"ell"

    6,请实现一个函数unique(Array  arr ),功能是去除数组中重复的数据。

    function unique(arr) {
        var len = arr.length;
        var res = [];
        for(var i = 0; i < len; i++){
            if(res.indexOf(arr[i]) == -1){
                res.push(arr[i]);
            }
        }
        return res;
    }
    var arr = ['1','2','3','1'];
    unique(arr);   // ['1','2','3']

    以上代码只能实现值的去重,无法去除数组中对象的重值。

    7,var s = {1:1, 2:2, };  alert(s['1']),在chrome、ff4、IE6下的运行结果各是什么?

        答:    1    1    报错

    8,密码输入框的规则是:

            1,首位必须是字母且大写;

            2,由3-15位字母,数字或下划线组成

            请使用正则表达式描述此规则。

        答:/^[A-Z][A-Za-z0-9_]{3,15}/ 或者/^[A-Z]\w{3,15}/

    9,写一个函数 revertInt( Number nb )功能是反转整数,输出为反转后的结果,符号保持不变。如输入123,输出321。

    function revertInt( nb ) {
        var nbStr = nb.toString();
        var nbArr = nbStr.split('').reverse().join('');
        return Number(nbArr);
    }
    revertInt(123);   //321

    10,写一个函数readInt(Number nb ),功能是读出整数,如输入123期望的输出是“一百二十三”。

    CSS部分:

    1,CSS中display:inline 与 block, inline-block三者有什么区别。

    2,CSS中visibility:hidden 与 display:none 有什么区别。

    3,划一条水平线,不允许使用<hr>,注意浏览器兼容性。

    4,CSS定义中{margin: 0px  20px  10px},margin-top, right, bottom, left各是多少。

    5,CSS实现 3*3的表格,不用<table>。

    综合题:

    1,列举常用的网站优化的方法。

    2,什么是js跨域,原因是什么,解决方法是什么。

    3,列举html5包含的新特性。

    4,列举http header并简要说明其作用。

    5,什么是doctype,有什么作用。

    面试:

    1,cookie,sessionStorage和localStorage

    2,http缓存机制

    3,301、302、304状态码

    4,XSS ,  XSRF

    5,bootstrap网格原理,template.js原理

    6,jquery和vue的区别

  • 相关阅读:
    [转]《三国演义》人名英文翻译妙评 你也来评评!
    Effective C++:改善程序技术与设计思维的55个有效做法(第三版)(中文版)(预订)Effective C++ 3RD
    A Closer Look At Parallax Occlusion Mapping
    [转]收录全部作品,《寂静岭套装》发售开始
    [转]程序员版《桃花庵》
    Cg 1.5 Beta 2
    FilteredTextBox控件
    CollapsiblePanel控件
    DynamicPopulate控件
    HoverMenu控件的使用
  • 原文地址:https://www.cnblogs.com/songya/p/9648825.html
Copyright © 2020-2023  润新知