小白学前端js高级-01

162 阅读3分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第25天,点击查看活动详情

自学前端

  • 前文

    • 本文是我自学js的一些知识以及个人理解, 希望帮助到一些想要学习前端的小白朋友
    • 介绍本次学习的是js高级相关知识
    • 这是基于我学习的笔记而来的文章
    • backend: 后端 frontend: 前端

    数据类型

  • 对象(引用)类型

    • Object: 用来存数据的
    • Function: 一种特别的对象(当中可以有可执行代码)
    • Array: 一种特别的对象(数值下标, 内部数据是有序的)
  • 判断

    • typeof
      • typeof返回数据类型的字符串表达式
      • 可以判断: undefined / 数值 / 字符串 / 布尔值 / function
      • 不能判断: null与 object object与array

        var a

        console.log(typeof a); //'undefined'

    • instanceof
      • 判断对象的具体类型
    • ===
      • 可以判断: undefined, null
  • 相关问题

    1. undefined与null的区别?
    2. 什么时候给变量赋值为null呢?
    3. 严格区别变量类型与数据类型?
    • 实例: 实例对象
    • 类型: 类型对象
      func
      

1 undefind 和 null 的区别?

  • undefind代表定义未赋值
  • null定义并赋值了, 只是值为null
  1. 什么时候给变量赋值为null呢?
    • 初始赋值, 表明要将赋值为对象
    • 结束前, 让对象成为垃圾对象(被垃圾回收器回收)

      起始

      var b = null //初始符值为null, 表明将要赋值为对象

      最后

      b = null //让b执行的对象成为垃圾对象(被垃圾回收器回收)

  2. 严格区别变量类型与数据类型?
    • 数据的类型
      1. 基本类型
      2. 对象类型
    • 变量的类型(变量内存值的类型)
      1. 基本类型: 保存的就是基本类型的数据
      2. 引用类型: 保存的是地址值

数据 _ 变量 _ 内存

  1. 什么是数据?
    • 存储在内存中代表特定信息的"东东", 本质上是0101....
    • 数据的特点: 可传递, 可运算
    • 一切皆数据
    • 内存中所有操作的目标: 数据
      • 算数运算
      • 逻辑运算
      • 赋值
      • 运行函数
  2. 什么是内存?
    • 内存条通电后产生的可储存数据的空间(临时的 )
    • 内存的产生和死亡: 内存条(电路板)=>通电=>产生内存空间=>存储数据=>断电=>内存空间和数据都消失
    • 一块内存的2个数据
      1. 内部存储的数据
      2. 地址值
    • 内存的分类
      • 栈: 全局变量/局部变量
      • 堆: 对象
  3. 什么是变量?
    • 可变化的量, 由变量名和变量值组成
    • 每个变量都对应一块小的内存, 变量名用来查找对应的内存, 变量值就是内存中保存的数据
  4. 内存, 数据, 变量 三者之间的关系
    • 内存用来存储数据的空间
    • 变量是内存的标识

后记

  • 希望对对前端有兴趣的朋友们有帮助
  • 这篇文章主要是关于js高级的, 希望大家喜欢
  • js的作者是美国人布兰登·艾奇, 非常厉害的人