【前端开发-JavaScript笔记】——基础知识

目录

基本数据类型

复杂数据类型/对象数据类型/引用数据类型

数据类型转换

运算符

 if

switch-case

 while

do-while

for

函数

补充


基本数据类型

    Number
        字面量创建 var num=123(一切数字都是数值类型 eg:二进制/十进制/八进制/十六进制)
        NaN :一个非数字
    String:被引号包裹的所有内容
    Boolean:只有true(1)和false(0)
    null:空
    undefined:未定义
    Symbol:唯一的值
    BigInt:大数据

复杂数据类型/对象数据类型/引用数据类型

    对象(Object)--->{}包裹的键值对,用逗号分隔开
    函数类型(Function)
    数组类型(Array)--->[]包裹的数据,带有从0开始的自然数的索引
    伪数组(Set)--->内部存储唯一的数据集
    日期(Data)
    正则(RegExp)

数据类型转换

 判断数据类型 ‘typeof’,'isNaN',...
    其他数据类型转数值
        Number(变量) 
        paseInt(变量)
        paseFloat(变量)
        算术运算符
    其他数据类型转字符串
        变量.toString()
        String(变量)
        使用+拼接运算
    其他数据类型转布尔
        Boolean(变量)

运算符

 数学运算符
        +,-,*,/,%
    比较运算符
        ==    - 比较符号两边的值是否相等,不管数据类型  
        ===   - 比较符号两边的值和数据类型是否都相等
        !=   - 比较符号两边的值是否不等
        !==   - 比较符号两边的数据类型和值是否不等
        >=   - 比较左边的值是否 **大于或等于** 右边的值
        <=   - 比较左边的值是否 **小于或等于** 右边的值
        >   - 比较左边的值是否 **大于** 右边的值
        <   - 比较左边的值是否 **小于** 右边的值
    逻辑运算符
        && 与 当左边出现false,直接返回false
        || 或 当左边出现true,直接返回true
        ! 取反
    三目运算符
        表达式?数据1:数据2
    赋值运算符
        =  +=  -=  *=  /=  %=
    自增运算符(一元运算符)
        ++
        --

注意:前置时,`++a`:表示先运算后使用;后置时,`a++`:表示先使用后运算

 if

    if(条件判断){条件成立就执行的代码段}
    if-else:条件满足就执行if的{},条件不满足就执行else的{}
    if-else-if:哪个条件满足,就执行哪一个的{},如果都不满足就执行else的{},前面的条件满足了,后面的就不会执行 

switch-case

    通过===对switch()里的内容和case后面的内容进行比对
    哪个case满足就执行后面对应的代码
    break会跳出switch,中止执行
    default 当所有的case都不满足的时候执行 

 while

先进行条件判断,若满足然后执行{循坏代码},再进行条件判断,直到条件不成立,跳出循环

do-while

先执行{循环代码},再进行条件判断,若满足则继续执行{},否则跳出循环

for

 for(var i=0;条件判断;i++){循环代码}

break 终止循环体 
continue 终止本次循坏,跳转下一次循环

函数

    定义方式
        声明式 ‘function(){}'
        赋值式   'var fn= function(){}'
    调用方式 
        声明式函数:可以再定义前或者定义后调用
        赋值式函数:只能再定义后调用
    递归函数
        自己调用自己  一定要写暂停条件,避免内存溢出
    参数
        形参  函数内部使用的变量
        实参  函数调用传入的值
        arguments伪数组,所有实参的集合
    return
        函数执行完返回的结果,若不写返回的就是undefined
        终止函数的执行
    预解析
        在执行代码之前对代码进行的通读和解释(变量提升,函数提升)将var和function进行提升
    作用域

  1. 访问规则:想要获取某个变量值
  2. 赋值规则:找到变量并给其赋值

访问规则

// 案例
function f1(){
    var a = 2
    function f2(){
        console.log(a) // 2
    }
    f2()
}
f1()

    访问规则的总结

  1. 如果当前作用域有定义的时候就会直接使用当前作用域中的变量
  2. 如果当前作用域中没有定义就会往上级查找 ,上级没有继续往上查找,直到找到全局
  3. 如果全局有的话就直接输出 ,全局没有的话直接报错

赋值规则

// 案例1
function f1(){
    function f2(){
        a = 1
    }
    f2()
}
f1()
console.log(a) 

// 案例2
function f1() {
  var a = 1
  function f2() {
      a = 2
      console.log(a) 
  }
  f2()
  console.log(a) 
  }
f1()
console.log(a) 

     赋值规则总结

  1. 会往上级查找,上级存在的情况可以重新赋值,上级没有就一直往全局中查找
  2. 如果全局中有就使用全局中的变量
  3. 如果全局中没有定义变量 查找到全局的时候 ,会自己在全局中定义一个变量

    函数封装三要素
        功能
        参数
        返回值

补充

    函数防抖

  • 只执行最后一次的触发
  • 在固定时间内触发次数过多,只执行一次( 比如: 密码校验)
  • 定时器中执行校验操作,
  • 每次输入的时候都将上一次的定时间关闭

      函数节流

  • 只执行第一次的触发
  • 通过节流阀(开关)控制
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值