javascript基础课堂一

变量

变量:容器 JS是弱类型语言,所以可以放任意类型的值

声明变量:在ES6以前,一直使用Var声明变量,ES6新增 let const

列:let a; 变量声明

let a=5; 变量初始化||变量声明并赋值

Var特征:

  1. 支持重复声明 列:Var a=5; Var a=6;
  2. 遗漏声明 列:a=5;系统或者浏览器会补上一个Var
  3. 不受语句影响,就是个强制全局变量!

图片.png

Let特征:

  1. 不允许在同一作用域中重复声明 列:let a=5; a=10;修改变量中的值javascript基础课堂一_第1张图片

Const特征:

  1. 声明常量 属于变量的一种类型 不能修改 会报错javascript基础课堂一_第2张图片
  2. ES6以前使大写表示常量 列:Var B=a
  3. const声明变量必须初始化
数据类型

JS中每一个值必须属于某一种数据

  1. 简单数据类型:原始数据类型||简单值

    ES6以前:undefined unmber string boolean null

    新增:symbol

  2. 复杂数据类型:合成数据类型||复杂值

    object

undefined解释:

undefined:未定义 声明的变量未赋值,函数没有返回值 都是undfined

关于undefined中的BUG

  1. 声明变量未赋值: 例:let a; log(a) 打印为 undefined
  2. 变量未声明:例:log (a); 报错 xxx未定义
  3. log (trpeof a); 打印为 undefined

会返回undefined的情况

  1. 变量未声明未赋值
  2. 函数没有返回值
  3. 给变量赋值为undefined
  4. 访问对象不存在的属性值
  5. return 无明确性
null解释:

ECMA认为undefined是由null衍生而来的

如果不进行精确的比较则相等 console .log(undefined==null) 打印为true

关于null的BUG:console .log ( typeof null ) 打印为object

undefined与null的区别:undefined有容器无内容 而null无容器无内容

boolean的解释

boolean(判断)有两个值:true(真) false(假)||!!加要检测的值

会返回false的情况:

  1. " "空字符串 ' '字符串模板 ``
  2. 0
  3. false
  4. undefined
  5. null
  6. NaN( not a unmber非数)
unmber的解释:
  1. 100 0.2 -1
  2. NaN:

    不与任何数相等包括自己

    NaN的类型是unmber

    NaN涉及任何计算 值都是NaN

    is NaN( )检测一个值是否是一个非数

    1. 传入数字:返回false
    2. 传入非数:返回true
string的解释:

' ' “ ” `` 这三种字符串不能互相嵌套

两种打印:

    let name="N",age="N"

1.  console .log("我叫"+name+"今年"+age); //我叫N今年N
    
2.  console .log(`我叫${name}今年${age}`); //我叫N今年N
运算符(操作符)
  1. 赋值运算符
    = += -= *= /=
 例:let a=1 b=2
        a=a+b简写a+=b
  1. 一元运算符(自增自减运算符)

    ++ --

  例:n=n+1简写n++
    
    例题1: let i=0 //0
    
    let j=i++ //0+1
    
    console .log( j i)打印为0 1
    
    例题2: let i=0 //0+1
    
    let j=++i // i
    
    console .log( j i)打印为1 1

自增自减规则:i++ i-- 先用值后增||后减

++i --i 先自增||自减再用值

当没有表达式 直接使用:

例题1: let i=0

i++ ;

console .log( i)打印为1
  1. 逻辑运算符

    与&& 或|| 非!
    &&一假全假 ||一真全真
    &&:

      表达式1&&表达式2
    
      step1:先判断表达式1的值是不是false
    
      如果是则返回表达式1的值
    
      step2:若表达式1的值是true
    
      则判断表达式2的值,是不是true
    
      是true 则判断表达式3 以此类推
    
      是false 则返回表达式2的值 以此类推
    
  2. 算数运算符
  + - * / %取模(余数)
  1. 关系运算符

    < == === <= >=

    ===:全等 值相等 数据类型也相等

  例:  
     console .log(5=="5")打印为true  
     console .log(5==="5")打印为false  
     ASCLL码  65A  97a
  1. 三目运算符

    简单的 if else

    表达式1? 表达式2:表达式3;

    解释:表达式1为true时执行表达式2 表达式2为false时执行表达式3

    例:let a=5 b=6
    
    a>b? console .log("a>b") : console .log("a
  1. typeof

    查看变量的数据类型图片.png

    • *

如有异议请联系我!


你可能感兴趣的:(javascript,node.js)