js基础|青训营笔记

101 阅读2分钟

这是我参与「第四届青训营 」笔记创作活动的第2天

---js基础小总结---

>>>分类

|JavaScript的类型| | | | | |
|--|--|--|--|--|--|--| |基本(值)类型|String|Number|boolean|undefined|null| |对象(引用)类型|Object|Function|Array| String: 任意字符串  Number: 任意数字 boolean: true/false   Undefined:undefined null:null   Function:一种特别的对象(可执行) Object:任意对象   Array:(数值下标,内部数据有序的)特别的对象

>>>判断

typeof返回数据类型的字符串表达
instanceof判断对象的具体类型
===可判断null/undefined

>>>面试问题

 1.undefinednull的区别? 
    *undefined代表定义未赋值
    *null定义了并赋值为null

2.什么时候变量赋值为null?
    *初始赋值  表明将要赋值的对象
    *结束前    让对象成为垃圾对象(被垃圾回收器回收)

3.严格区分变量类型与数据类型
    *数据类型: 基本类型
                对象类型
    *变量的类型(变量内存值的类型):
                基本类型    保存就是基本类型的数据
                引用类型    保存的是地址

---如何写好js---

原则:

  1. 各司其职:让HTML、CSS和JavaScript职能分离
  2. 组件封装:好的UI组件具备正确性、扩展性、复用性。
  3. 过程抽象:应用函数式编程思想。

简单举个例子:

  • 这是自己一开始的代码

  • -通过组件封装来使代码更加简洁高效
    组件是指Web页面上抽出来一个个包含模版(HTML)、功能(JS)和样式(CSS)的单元。 对这方面比较浅显: sc5.jpg

  • 总结:

    -   组件设计的原则:封装性、正确性、扩展性、复用性
    
    -   实现组件的步骤:结构设计、展现效果、行为设计
    
    -   三次重构:
             1.  插件化
             1.  模板化
             1.  抽象化(组件框架)
    

感谢阅读。