类型转换和运算符

typeof函数

检测数据类型,可以使用以下两种调用的方式:

  typeof 变量或表达式

  typeof(变量或表达式)

var n="asda";
console.log(typeof n);//string
console.log(typeof(n));//string

数据类型转换

不同类型的数据参与运算时,需要转换类型,根据转换的方式不同可以分为,强制类型转换和隐式类型转换

强制类型转换

toString()

强制转换字符串类型,返回转换后的字符串

var a = 100;
a = a.toString();
var b = true;
b = b.toString();

Number(param)

强制转换Number类型,参数为要进行数据类型转换的变量或值,返回转换后的结果

如果转换成功,返回Number值

如果转换失败,返回NaN,(Not a Number)

隐式类型转换(自动转换)

当字符串与其它数据类型进行"+"运算时,表示字符串的拼接,而不再是数学运算,转换规则:

将非字符串类型的数据转换成字符串后拼接,最终结果为字符串

其它情况下,一律将操作数转Number进行数学运算

运算符

在JavaScript代码中,全部的运算符包含下列几种:

算数运算符和赋值运算符

= 等号,它的功能是将右边的值赋给左边变量

+ - * / %号,它的功能是对变量进行加减乘除取余运算

+= -= *= /= %=号,它的功能是对变量计算后再赋值的简写

符号运算符

自增或自减运算符

++符号和--符号,表示一个变量的自增和自减,它是指在自身基础上进行+1或-1的操作

注意:

  自增或自减运算符在单独与变量结合时,放前和放后没有区别

  与其他运算符结合使用,如是前缀,那就先++/--,再进行赋值或其它运算,如果是后缀,先结合其它运算符,在进行++/--

关系/比较运算符

关系运算符用来判断表达式之间关系,其结果永远是布尔值true/false

>    <
>= <=
== !=
=== !==

相等与全等

相等:不考虑数据类型,只做值的比较(包含自动类型转换)

全等:不会进行数据类型转换,要求类型一致且值相等才判断全等

逻辑运算符

逻辑运算符用于判定变量或值之间的逻辑,包括&&(与)、||(或)、!(非)三种类型

&&逻辑与表达式同时成立,最终结果才为true; and

||逻辑或表达式中只要有一个成立,最终结果即为true;or

!逻辑非对已有表达式的结果取反注意:除0值以外,所有值都为真;not

三目运算符

根据不同的条件,执行不同的操作/返回不同的值,这样的操作过程就是一次三木运算操作

语法格式:表达式1?表达式2:表达式3

过程:

  判断表达式1是否成立,返回布尔值

  如果表达式1成立,执行表达式2

  如果表达式1不成立,执行表达式3

JavaScript03的更多相关文章

  1. javascript-03

    1.Object   |-1.var  变量=new Object();         |-变量.自定义的属性='值';     |-变量.自定义名称=function(){}   |-2.var ...

随机推荐

  1. noip模拟47

    原版在 \(linux\) 本地写完没保存关机给没了-- 再简单写一下 \(t2\) 用 \(dp\) 转移 \(f[i]=\sum _ {j=last[a[i]]}^{i-1} f[j]\) 用前缀 ...

  2. 简说yuv

    最近弄了一个读取y4m文件转成yuv的流的事情,记录一些yuv相关的细节 为什么会有yuv 因为我们目前的显示器显示的原理都是三原色,几乎所有的视频数据最后都要转为rgb格式才能渲染到显示屏上,而原始 ...

  3. linux 命令进阶篇之二

    一.预备知识 选取init的进程. cat :由第一行开始显示文件内容 tac:由最后一行开始显示,有没有发现和cat是反过来写的 more:一页一页的显示内容 less:与more相似,但是可以往前 ...

  4. .Net性能调优-MemoryPool

    简单用法 //获取MemoryPool实例,实际返回了一个ArrayMemoryPool<T> MemoryPool<char> Pool = MemoryPool<ch ...

  5. 30分钟学会Docker里面开启k8s(Kubernetes)登录仪表盘(图文讲解)

    前言 我们之前搭建了第一个docker项目: windows环境30分钟从0开始快速搭建第一个docker项目(带数据库交互):https://www.cnblogs.com/xiongze520/p ...

  6. Weblogic Coherence组件漏洞初探CVE-2020-2555

    Weblogic Coherence组件漏洞初探CVE-2020-2555 2020年1月,互联网上爆出了weblogic反序列化远程命令执行漏洞(CVE-2020-2555),Oracle Fusi ...

  7. [第十篇]——Docker 容器连接之Spring Cloud直播商城 b2b2c电子商务技术总结

    Docker 容器连接 前面我们实现了通过网络端口来访问运行在 docker 容器内的服务. 容器中可以运行一些网络应用,要让外部也可以访问这些应用,可以通过  -P 或  -p 参数来指定端口映射. ...

  8. 教你搞懂Jenkins安装部署!

    前言:请各大网友尊重本人原创知识分享,谨记本人博客:南国以南i Jenkins介绍 Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用 ...

  9. 获取docker镜像的tag列表

    已nginx为例 命令如下 wget -q https://registry.hub.docker.com/v1/repositories/nginx/tags -O - | sed -e 's/[] ...

  10. Python中with...as...的用法详解

    简介 with是从Python2.5引入的一个新的语法,它是一种上下文管理协议,目的在于从流程图中把 try,except 和finally 关键字和资源分配释放相关代码统统去掉,简化try-.exc ...