【JavaScript】数据类型和运算符

目录

一、数据类型

[1.1 JS常用数据类型](#1.1 JS常用数据类型)

[1.2 JS中使用var声明变量特点](#1.2 JS中使用var声明变量特点)

二、运算符

[2.1 算术: + - * / %](#2.1 算术: + - * / %)

[2.2 复合算术:++ -- += -= *= /= %=](#2.2 复合算术:++ -- += -= *= /= %=)

[2.3 关系: > < >= <= != == ===](#2.3 关系: > < >= <= != == ===)

[2.4 逻辑: 短路||或 短路与&& 非!](#2.4 逻辑: 短路||或 短路与&& 非!)

[2.5 条件: 表达式? 值1:值2](#2.5 条件: 表达式? 值1:值2)

[2.6 位:按位& 按位或| 按位异或^ 左移<< 右移>> 无符号右移>>>](#2.6 位:按位& 按位或| 按位异或^ 左移<< 右移>> 无符号右移>>>)


一、数据类型

JS是弱类型的语言,在声明变量时不需要指定数据类型,变量的数据类型在给其赋值时确定;JS声明变量统统使用var。如:var a=20; var str="hello"。

1.1 JS常用数据类型

数值类型: number 包括整数和小数

字符串类型: string

布尔类型: boolean

引用类型: object

function类型: function

变量声明未赋值:undefined

变量赋null值: object类型,值为null

说明:

1、使用typeof运算符来判断变量数据类型

2、使用console.log()在浏览器控制台输出值

1.2 JS中使用var声明变量特点

  • var可以声明弱类型变量
  • var声明过的变量支持再次被声明
  • 变量可以使用不同的数据类型多次赋值
  • JS语句可以以";"结尾也可以不用";"结尾
  • 变量标识符严格区分大小写
  • 标识符的命名规则参照Java
  • 如果使用未声明的变量会报"*** is not defined at ***"
  • 变量只声明不赋值,那么值为undefined。

二、运算符

2.1 算术: + - * / %

除零值为Infinity,不管操作数是整数还是小数除的结果值都和数学计算的值一样。

模零值为NaN即not a number;求模的操作数可以是小数,模值的正负由第一个操作数决定。

2.2 复合算术:++ -- += -= *= /= %=

在人工计算复合运算符的值时,只需将操作数中间的等号去掉,在求结果。

2.3 关系: > < >= <= != == ===

== 如果两端的操作数的数据类型不一致会将两端的数据都转化为number类型后在进行比较。

例如转化: '123'---->123、true--->1、 false--->0

=== 两端的操作数数据类型不一致直接返回false,数据类型相同才会进行比较

2.4 逻辑: 短路||或 短路与&& 非!

2.5 条件: 表达式? 值1:值2

2.6 位:按位& 按位或| 按位异或^ 左移<< 右移>> 无符号右移>>>

@声明:"山月润无声"博主知识水平有限,以上文章如有不妥之处,欢迎广大IT爱好者指正,小弟定当虚心受教!

相关推荐
Pu_Nine_92 分钟前
10 分钟上手 ECharts:从“能跑”到“生产级”的完整踩坑之旅
前端·javascript·echarts·css3·html5
liuyao_xianhui2 分钟前
内存管理(C/C++)
java·开发语言·c++
饭碗的彼岸one19 分钟前
C++设计模式之单例模式
c语言·开发语言·c++·单例模式·设计模式·饿汉模式·懒汉模式
青铜发条1 小时前
【Qt】PyQt、原生QT、PySide6三者的多方面比较
开发语言·qt·pyqt
wanzhong23332 小时前
学习triton-第1课 向量加法
开发语言·python·高性能计算
li35742 小时前
React 核心 Hook 与冷门技巧:useReducer、useEffect、useRef 及 is 属性全解析
前端·javascript·react.js
快乐是Happy2 小时前
分享一个非常实用的防止重复提交操作
前端·javascript
可子是我的小猫2 小时前
【JS】模块(二)
javascript
云枫晖2 小时前
JS核心知识-执行上下文
前端·javascript
麦当_2 小时前
TanStack Router File-Based Router Mask 完全指南
前端·javascript·设计模式