美文网首页
笔试总结(一)

笔试总结(一)

作者: 星月西 | 来源:发表于2017-09-02 21:51 被阅读11次

    1.==运算符比较喜欢Number类型

    Number([]) //0
    Number({}) //NaN
    Number(false) //0
    其中,对象到数组的转化,会优先调用valueOf方法,否则就调用toString方法,数组到数字的转化调用toString方法,空数组会转化为字符串,空字符串转化为数字0
    注意:==比较null和undefined与其他的比较都不相等,相互比较相等

    2.bootstrap栅格

    • col-xs 手机,超小屏幕
    • col-sm 平板
    • col-md 中等屏幕
    • col-lg 大屏幕

    3.Object.is()加强版的===

    行为与===基本一致,但是

    • +0不等于-0
    • NaN等于自身

    4.函数表达式

    var a=function b(){
    console.log('start');
    b();
    }
    只能在函数内部使用函数名称,在外部使用函数名称调用函数会报错

    5.typeof能判断的类型

    let red=Symbol();
    console.log(typeof red);
    

    可以判断symbol类型

    6.变量提升机制

    • 变量的声明会提升在作用域顶部
    • function直接定义函数会全部提升,包括函数名和函数体
    • 函数的提升优先级比变量声明高,同名的变量声明会被忽略
    • 变量提升的优先级低于形参
    var foo = {n:1};
    (function(foo){            //形参foo同实参foo一样指向同一片内存空间,这个空间里的n的值为1
        var foo;               //优先级低于形参,无效。
        console.log(foo.n);    //输出1
        foo.n = 3;             //形参与实参foo指向的内存空间里的n的值被改为3
        foo = {n:2};           //形参foo指向了新的内存空间,里面n的值为2.
        console.log(foo.n);    //输出新的内存空间的n的值
    })(foo);
    console.log(foo.n);        //实参foo的指向还是原来的内存空间,里面的n的值为3.
    

    7.DNS

    • DNS将域名翻译为IP地址
    • DNS协议主要使用UDP,但是请求字节过长就用TCP协议,将其分割为多个片段传输
    • DNS协议的默认端口是53
    • 浏览器的DNS缓存时间有区别,chrome对每个域名默认缓存60s

    8.html5标签

    • mark标签用于突出显示部分文本
    • 网页最上层标题为title
    • input的type属性可以为image,为图片形式的提交按钮,必须有src和alt属性

    9.center标签

    可以让内容居中,默认样式为text-align: center

    10.BFC

    即块级格式化上下文,一个独立的块级渲染区域,与区域外部无关

    • 可以给子元素创建BFC来消除垂直外边距合并
    • 清除浮动,计算BFC高度时,浮动子元素也参与计算
    • 阻止文字环绕

    创建BFC的方法:

    • float不为none
    • overflow不为visible
    • display为inline-block, table-cell, table-caption
    • position为absolute或fixed
      有人会将display: table也当成生成BFC,这里table会默认生成一个匿名的table-cel,这个匿名的table-cell会生成BFC

    11.Options请求的作用

    • 获取服务器支持的HTTP请求方法
    • 用来检查服务器的性能,使用ajax进行跨域请求时的预检,需要向另一个域名发送OPTIONS请求,用于判断发送的请求是否安全

    12.可继承属性

    • background-color不可继承
    • setTimeout不是全局函数,是在window对象上的属性
    • 全局函数一共有7个
      escape( )、eval( )、isFinite( )、isNaN( )、parseFloat( )、parseInt( )、unescape( )

    13.数组转化为数字

    • 017为8进制,转化为十进制为15
    • 空数组[] -> 0
    • 只有一个值的数组 [3] -> 3
    • 有多个值或者数组长度确定的数组 new Array(3) -> NaN
    • 空对象{} -> NaN

    14.angular的apply方法

    可以在angular框架之外执行DOM事件,setTimeout,XHR等,它包裹的函数运行完成后,会直接运行脏检查循环

    15.css雪碧图

    css sprites可以减少网页的http请求,同时能减少图片的字节

    16.while循环

    while循环中注意判断条件的顺序,先判断&&前面的内容,可能会造成数组的越界

    17.对传输操作进行严格的控制和管理

    数据链路层

    18.回滚段

    • 回滚段用于存放数据修改之前的值,一个事务只能使用一个回滚段来存放它的回滚信息,而一个回滚段可以存放多个事务的回滚信息
    • 给长事务分配大回滚段

    19.Infinity特性

    • Infinity%2=NaN
    • Infinity/2=Infinity

    20.不换行设置

    • word-break: break-all 用于处理单词斩断
    • white-space: no-wrap 用于处理元素间的空白,只在一行内显示

    相关文章

      网友评论

          本文标题:笔试总结(一)

          本文链接:https://www.haomeiwen.com/subject/dqnrjxtx.html