首页 > 其他分享 >JS数据类型及运算符

JS数据类型及运算符

时间:2022-09-24 02:22:46浏览次数:60  
标签:NaN 数据类型 Number 数值 JS 运算符 字符串

 

一.数据类型

js的数据类型分为原始型数据类型和引用型类型
原始类型分为数值型、字符串型、布尔型、未定义型、空

1、数值型
常见数字

浮点型
1.23
2.34
3.1415e1 => 31.415 e1 小数点右移一位
3.1415e-1 => 0.31415 相反

typyof方法检测数据类型

2、字符串类型
所有被引号包含的值都是字符串,不区分单双引号
查看一个字符的编码
'L'.charCodeAt()

3.布尔型
true和false 真和假

4.未定义型
只有一个值undefined,表示一个控制,例如:声明了变量未赋值则为undefined

5.空
只有一个值null,类型是object,常和对象一起使用

 

二.数据类型转换

分为隐式转换和强制转换

1、隐式转换
(1.数值+字符串
  自动将数值类型转换字符类型,进行拼接
  2 + '3' => '23'

(2.数值+布尔型 布尔型转换为数值
2 + true => 3
2 + false => 2

(3.字符串+布尔型 布尔型转为字符串
'3' + true => '3true'

NaN:not a number,不是一个数字,只要出现这个值就是在将一个值转换为数值的时候,没有成功的得到数字返回的结果。NaN和任何数值执行数学运算结果还是NaN
所有的隐式转换为数值都会调用Number()函数

2.强制转换
(1.强制转换为数值
Number()
Number('1') => 1
Number('1a') => NaN
Number(true) => 1
Number(false) => 0
Number(undefined) => NaN
Number(null) => 0
(2、强制转换整型
parseInt()
parseInt(1.2) => 1
parseInt('1.22') => 1
parseInt('2a2') => 2
parseInt('a2') => NaN
(3.强制转换成浮点型
parseFloat()
parseFloat('2a4') => 2
parseFloat('3.14c') => 3.14
parseFloat('a2.2') => NaN
(4.强制转换成字符串
toString()
只能用于将数值和布尔型转为字符串
var n = 2
var str = n.toString() => '2'

 

三.运算符

1.算术运算符
+ - * / %取余 ++自增 --自减

var a1 = 5
var a2 = a1++ => 先赋值给a2再进行自增

console.log(a2) => 6

console.log() => 打印输出函数

var a3 = 2

var a4 = --a3 => 1 先执行a3自减,再赋值给a4

2.比较运算符
> < = >= <= == != === !==

== 等于,只比较值,可能会出现隐式转换
=== 全等于,比较值还会比较类型
!= 不等于,比较值
!=== 不全等于,比较值是否不同或者类型

数字和字符串比较,字符串会转换为数值
字符串之间比较,比较的是首个字符的编码

3.逻辑运算符
&& 逻辑与
|| 逻辑或
!   逻辑非 

 4.赋值运算符
    = += -= *= /= %=
    先执行运算,再执行赋值

 

标签:NaN,数据类型,Number,数值,JS,运算符,字符串
From: https://www.cnblogs.com/cll9/p/16724832.html

相关文章

  • JS 打开一个链接
    我们知道在HTML打开链接的方法就是定义href如下面的代码:<div><ahref="javascript:void(0);"@click="openBlogDetail(item.id)"class="text-primary">Read......
  • JS入门
    JavaScript一.Js概述js是一种可以运行在浏览器,也可以运行在服务端的的语言;浏览器可以实现用户的交互效果,可以进行后端开发。例如:操作数据库,调用其他服务器​特点:无......
  • Vue2项目解决-js/css文件无法引用问题
    打包:    在vue.config.js文件中  const{defineConfig}=require('@vue/cli-service')module.exports=defineConfig({  transpileDependencies:t......
  • JSX反应语法-转载
    JSX语法详解在之前的react基础文章中,创建元素使用的是React.createElement()方法,利用方法创建单层元素还算可以,可是如果出现嵌套结构,使用这种方法就会比较繁琐而且......
  • 数据类型
    数据类型强类型语言要求变量使用严格符合规定,所有变量必须先定义后才能使用。Java数据类型示例:publicclassData{publicstaticvoidmain(String[]args){......
  • 解决golang json: unsupported value: NaN
    遇到这种json:unsupportedvalue:NaN大部分是因为我们处理数值型的数据时,出错,导致变成了NaNnoanumber然后序列化json的时候,如果值是NaN,就会出现这个错误 仔细......
  • python注释、变量、数据类型详细
    1.python注释什么是注释?注释是对代码的解释说明,写注释是为了下次来看能更快的理解,抵抗遗忘。单行注释:文字之前加警号pycharm中有快捷键ctrl+?#这是单行注释......
  • js与jquery实例-拖动改变列宽和行高
     js与jquery实例-拖动改变列宽和行高如何通过javascript或者jquery实现改变表格宽度或者行高的功能?今天就把这个功能代码分享给大家,绝对原创哦,代码少而且易懂。先看效果......
  • WKWebView 注入JS代码
    初始化时进行注入WKWebViewConfiguration*config=[[WKWebViewConfigurationalloc]init]; //实际上注入js文件和注入js代码字符串没有区别,因为也要把JS文件......
  • 响应式布局— rem介绍、媒体查询介绍、rem和媒体查询结合的布局、flexible.js 的使用
    媒体查询媒体查询MediaQueries,是一种可以根据不同的设备为其实现不同的样式的技术。在CSS3引入了媒体查询,使用媒体查询,你可以针对不同的媒体类型定义不同的样式,还可以......