每日思考(2020/03/12)

Posted ericzlin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了每日思考(2020/03/12)相关的知识,希望对你有一定的参考价值。

题目概览

  • 什么是html的字符实体?版权符号代码怎么写?
  • 说说position的absolute和fixed共同与不同点分别是什么
  • 举例子说明javascript的变量声明提升和函数声明提升
  • 什么是设计模式,你最常用的设计模式有哪些?

题目解答

什么是html的字符实体?版权符号代码怎么写?

HTML 原代码 显示结果 描述
&lt; < 小于号或显示标记
&gt; > 大于号或显示标记
&amp; & 可用于显示其它特殊字符
&quot; 引号
&reg; ? 已注册
&copy; ? 版权
&trade; ? 商标
&ensp; 半个空白位
&emsp; 一个空白位
&nbsp; 不断行的空白

说说position的absolute和fixed共同与不同点分别是什么

  • 相同点:

    • 都是用来给元素定位的属性,具有定位元素的一切特点(例如脱离文本流、不占据空间等等);
  • 改变元素的呈现方式为display:block;
    • 都能触发BFC,与外界布局互不影响
  • 设置z-index属性能够产生层叠上下文
  • 不同点:
    • fixed的父元素永远是浏览器窗口,不会根据页面滚动而改变位置;
    • absolute的父元素是可以设置的,永远跟随父元素的位置的改变而改变。
    • position根据第一个不为static的祖先元素定位,fixed定位当元素祖先的 transform 属性非 none 时,容器定位由相对于视口改为相对于该祖先元素

举例子说明javascript的变量声明提升和函数声明提升

  • 变量声明:只提升声明 不提升赋值操作

    console.log(a);// undefinde
    var a = "hello world";
    console.log(a);//  "hello world"
  • 函数声明: 函数体整体被提升

    f()
    function f(){
        console.log('hello world');// "hello world"
    }

什么是设计模式,你最常用的设计模式有哪些?

  • 含义:设计模式是一种让代码可重用/可拓展/可解偶的拟物化思维,比如接口不同就用适配器之类的。
  • 常用:
    • 创建型设计模式:简单工厂模式、工厂方法模式、抽象工厂模式、建造者模式、原型模式、单例模式
    • 结构型设计模式:外观模式、适配器模式、代理模式、装饰者模式、桥接模式、组合模式、享元模式
    • 行为型设计模式:模板方法模式、观察者模式、状态模式、策略模式、职责链模式、命令模式、访问者模式、中介者模式、备忘录模式、迭代器模式、解释器模式
    • 技巧型设计模式:链模式、委托模式、数据访问对象模式、节流模式、简单模板方式、惰性模式、参与者模式、等待者模式
    • 架构型设计:同步模块模式、异步模块模式、widget模式、mvc模式、mvp模式、mvvm模式

以上是关于每日思考(2020/03/12)的主要内容,如果未能解决你的问题,请参考以下文章

每日思考(2019/12/9)

每日思考(2019/12/29)

源哥每日一题第十五弹 poj 1190 关于深搜减枝以及对于阅读代码的思考

markdown 每日片段

每日思考记录(11)

每日思考(2020/02/23)