JavaScript(二)

目录

一、JavaScript变量

1、定义

2、使用

3、var、let和const关键字

4、变量命名的规则

二、JavaScript数据类型

三、JavaScript数据类型转换

1、转换为字符串型

2、转换为数字型

3、转换成布尔型

四、JavaScript运算符

1、算数运算符

2、递增和递减运算符

3、比较运算符

4、逻辑运算符

5、赋值运算符

6、三元运算符

7、运算符优先级


一、JavaScript变量

1、定义

变量,就是一个用于存放数值的容器。这个数值可能是一个用于累加计算的数字,或者是一个句子中的字符串。

变量的独特之处就在于它存放的数值是可以改变的。但是变量能存储任何东西——不只是字符串和数字,变量可以存储更复杂的数据,甚至是函数。

2、使用

  • 声明变量

        语法:在var或let关键字之后加上这个变量的名字

例:

var myName;

let myAge;
  • 注意:在JavaScript中,所有代码指令都会以分号结尾 (;) — 如果忘记加分号,你的单行代码可能执行正常,但是在多行代码在一起的时候就可能出错。所以,最好是养成主动以分号作为代码结尾的习惯。
  • 变量赋值

        在声明变量后可以给变量赋值(用等于号=来为变量赋值,等号左边的是变量的名称,等号右边是要赋予变量的值)。

例:

myName = 10;

myAge = 18;
  • 初始化变量

        在声明变量的同时进行赋值。

例:

var myName = 10;

let myAge = 18;

3varletconst关键字

在最初创建JavaScript时,是只有var的,在 ECMAScript6(ES6)发布之后,新增了 let 和 const 两个关键字来声明变量。

  • 在ES5中,顶层对象的属性和全局变量是等价的,用var声明的变量既是全局变量,也是顶层变量;使用var,我们能对一个变量进行多次声明,后面声明的变量会覆盖前面的变量声明;但是在函数中使用var声明变量时,该变量是局部的。
  • 使用 let 关键字声明的变量只在其所在的代码块中有效(类似于局部变量),并且在这个代码块中(即相同作用域),同名的变量不能重复声明;
  • const 关键字的功能和 let 相同,但使用 const 关键字声明的变量还具备另外一个特点,那就是 const 关键字定义的变量,一旦定义,就不能修改(即使用 const 关键字定义的为常量),它声明的是一个只读的常量。

4、变量命名的规则

  • 由字母、数字、下划线和美元符号($)组成
  • 严格区分大小写
  • 不能以数字开头
  • 不能是关键字、保留字
  • 要尽量做到“见其名知其意”
  • 建议遵循驼峰命名法,首字母小写,后面的单词首字母大写

二、JavaScript数据类型

JavaScript是一种弱类型语言,不用提前声明变量的数据类型。在程序运行过程中,变量的数据类型会被自动确定。

JavaScript数据类型分为两大类:基本数据类型  和  复杂(引用)数据类型。

  • 基本数据类型
    • Boolean(布尔型)
      • 通常用于逻辑判断,它有两个值:true和false,表示事物的“真”和“假”。
    • String(字符串型)
      • 在JavaScript中使用单引号或双引号来包裹字符串。
    • Number(数字型)
      • 可以用来保存整数或浮点数(小数)。
      • 字符串长度:字符串是由若干字符组成的,这些字符的数量就是字符串的长度。通过字符串的length属性可以获取整个字符串的长度。
      • 范围:
        • 最大值:Number.MAX_VALUE,输出结果:1.7976931348623157e+308

          最小值:Number.MIN_VALUE,输出结果:5e-324

      • 3个特殊值:Infinity和- Infinity 和NaN
        • Infinity(无穷大) :如Number.MAX_VALUE*2

          - Infinity(无穷小) :如-Number.MAX_VALUE*2

          NaN(非数值): 如'abc' – 100

          isNaN:用来判断一个变量是否为非数字的类型,返回值为true表示非数字,false表示是数字

    • Null(空型)
    • Undefined(未定义型)
      • 如果一个变量声明后没有赋值,则变量的值就是undefined。
  • 复杂数据类型
    • Object(对象)

三、JavaScript数据类型转换

1、转换为字符串型

  • 利用“+”拼接字符串(最常用的一种方式)
  • 利用toString()转换成字符串
  • 利用String()转换成字符串

2、转换为数字型

  • 使用parseInt()将字符串转为整数
  • 使用parseFloat()将字符串转为浮点数
  • 使用Number()将字符串转为数字型
  • 利用算术运算符(-、*、/)隐式转换

3、转换成布尔型

  • 转换为布尔型使用Boolean(),在转换时,代表空、否定的值会被转换为false,如空字符串、0、NaN、null和undefined,其余的值转换为true。

四、JavaScript运算符

1、算数运算符

  • 加:+
  • 减:-
  • 乘:*
  • 除:/
  • 取余:%
  • 算术运算符的注意事项:
    • 进行四则混合运算时,运算顺序要遵循数学中“先乘除后加减”的原则
    • 在进行取模运算时,运算结果的正负取决于被模数(%左边的数)的符号,与模数(%右边的数)的符号无关
    • 在开发中尽量避免利用浮点数进行运算,因为有可能会因JavaScript的精度导致结果的偏差
    • 使用“+”和“-”可以表示正数或负数

2、递增和递减运算符

  • 递增运算符:++;递减运算符:--
  • 属于一元运算符
  • 前置递增(递减)运算符:递增和递减运算符写在变量前面,返回的是计算后的结果
  • 后置递增(递减)运算符:递增和递减运算符写在变量后面,返回的是计算前的结果
  • 递增和递减运算符的优先级高于“+”“-”等运算符

3、比较运算符

  • 比较运算符用于对两个数据进行比较,其结果是一个布尔值,即true或false
  • 常用的比较运算符及用法

运算符

运算

示例

结果

>

大于

5 > 5

false

<

小于

5 < 5

false

>=

大于或等于

5 >= 5

true

<=

小于或等于

5 <= 5

true

==

等于

5 == 4

false

!=

不等于

5 != 4

true

===

全等

5 === 5

true

!==

不全等

5 !== '5'

true

4、逻辑运算符

  • 逻辑运算符用于对布尔值进行运算,其返回值也是布尔值。
  • 与:&&
  • 或:||
  • 非:!

5、赋值运算符

  • 赋值运算符用于将运算符右边的值赋给左边的变量。
  • 常用的逻辑运算符

运算符

运算

=

赋值

+=

加并赋值

-+

减并赋值

*=

乘并赋值

/=

除并赋值

%=

模并赋值

+=

连接并赋值

<<=

左移位并赋值

>>=

右移位并赋值

>>>=

无符号右移位并赋值

&=

按位“与”并赋值

^=

按位“异或”并赋值

|=

按位“或”并赋值

6、三元运算符

  • 三元运算符是一种需要三个操作数的运算符,运算的结果根据给定条件决定。
  • 语法格式:条件表达式?表达式1:表达式2
    • 语法说明:先求条件表达式的值,如果为true,则返回表达式1的执行结果;如果条件表达式的值为false,则返回表达式2的执行结果。

7、运算符优先级

  • 是指表达式中所有运算符参与运算的先后顺序
  • 优先级如下

结合方向

运算符

结合方向

运算符

()

==   !=    ===    !==

.   []   new(有参数,无结合性)

&

new(无参数)

^

++(后置)  --(后置)

|

!   ~   -(负数)   +(正数)   ++(前置)   --(前置)   typeof   void   delete

&&

**

||

*    /   %

?:

+   -

=   +=   =   *=  /=   %=    <<=   >>=    >>>=    &=    ^=   |=

<<    >>    >>>

,

<   <=   >   >=    in   instanceof

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值