1、强制类型转换Number

1.1 代码

<!DOCTYPE html>
<html> <head>
<meta charset="utf-8">
<title>强制类型Number</title>
<style type="text/css"> </style> <script type="text/javascript"> /* 将其他的数据类型转换为number
转换方式一:
使用Number函数
字符串转换为数字
1、如果纯数字的字符串,直接转换为数字
2、如果字符串中有非数字的内容,则转换为NaN
3、如果字符串是一个空串或者是一个全是空格的字符,则转换为0 Boolean转数字:
1、true 转换 1
2、false 转换 0 Null 转换为 数字 0 Undefined 转换为数字 NaN 转换方式二: */ var a = "123";
a = Number(a)
console.log("字符串转换为number:"+typeof a); var b = "123px" // parseInt()可以将一个字符串中的有效的整数内容取出来,然后转换为Number
b = parseInt(b)
console.log("parseInt:"+b); // parseFloat()可以取出小数位
var c = "123.21px"
c = parseFloat(c);
console.log("parseFloat:"+c); var d = true;
d = d.toString();
console.log(typeof d); // 如果对非String使用parseInt()或parseFloat(),它会先将其转换为String,然后在操作 d = parseFloat(d);
console.log(d); </script>
</head> <body> </body> </html>

1.2 测试结果

2、进制表示

2.1 代码

<!DOCTYPE html>
<html> <head>
<meta charset="utf-8">
<title>标题</title>
<style type="text/css"> </style> <script type="text/javascript">
/* 在JS中需要表示16进制的数字,则需要以0X开头 如果需要表示8进制的数字,则需要以0开头 表示二进制: 需要0b开头 */ var a ;
//十六进制
a = 0X123;
a = 0X431;
console.log("16进制:"+a); //八进制
a = 021;
a = 032;
console.log("8进制:"+a); //二进制
a = 0b10;
console.log("2进制"+a); </script>
</head> <body> </body> </html>

2.2 测试结果

3、强制类型转换为Boolea

3.1 代码

<!DOCTYPE html>
<html> <head>
<meta charset="utf-8">
<title>转换boolean</title>
<style type="text/css"> </style> <script type="text/javascript"> /* 将其它的数据类型转换为Boolean
使用Boolean()函数 数字--->布尔
- 除了0和NaN,其余的都是true 字符串--->布尔
- 除了空串,其余的都是true
null和undefined 都会转换为false 对象也会转换为 true */ var a = null;
a = Boolean(a);
console.log(a); a = "123";
a = Boolean(a);
console.log(a); a = 123;
a = Boolean(a);
console.log(a); a = "";
a = Boolean(a);
console.log(a);
</script>
</head> <body> </body> </html>

3.2 测试结果

4、运算符

4.1 代码

<!DOCTYPE html>
<html> <head>
<meta charset="utf-8">
<title>运算符</title>
<style type="text/css"> </style> <script type="text/javascript"> /* 运算符也叫操作符
通过运算符可以对一个或者多个值进行运算,同时获得运算结果
例如:typeof就是运算符,可以获得一个值的类型
它会将该值的类型以字符串的形式返回
number string undefined Boolean object 算数运算符:
当对非number的值进行运算的时候,会首先将这些值转换为number
任何值和NaN做运算都得NaN +:对两个值进行加法运算,并将结果返回
- 如果对两个字符串进行加操作,进行拼串操作
- 任何值和字符串进行加法操作,都会先转换为字符串,然后进行拼串操作 -:可以对两个值进行减法运算,将非number转换为number *:可以对两个值进行乘法运算 /:可以对两个值进行除法运算 %:取模运算,取余数 */ var a = 123;
a = typeof a;
console.log(a); var result ;
result = true + false;
console.log(result); result = "你好"+"大水果!!!";
console.log(result); result = "hello--"+
"my--"+
"son";
console.log(result); //任何值和字符串相加都会转换为字符串 result = true + "js";
console.log(result); /*
我们可以利用这一特点,来将一个任意的数据类型转换为String
我们只需要为任意的数据类型+一个 "" 就可以将其转换为String
隐式的类型转换,由浏览器自动完成,实际上也是调用了String()
*/ var a = 123 +"";
console.log(typeof a); result = 1+2+"4";//34 自左向右执行执行到3+"4"的时候,3转换为字符串,然后和4进行拼串操作
console.log(result); result = "2"+3+4;//234 3转换为字符串和2进行拼串,然后23字符串和数字4进行相加,数字4转换为字符串和23进行拼串
console.log(result); result = 100 - "123jdjd";
console.log(result);//NaN
</script>
</head> <body> </body> </html>

4.2 测试结果

5、自增自减

5.1 代码

<!DOCTYPE html>
<html> <head>
<meta charset="utf-8">
<title>自增自减</title>
<style type="text/css"> </style> <script type="text/javascript"> /*
自增:
让变量在在自身的基础上加1
对于一个变量自增以后,原变量的值会立即自增1
自增分为两种:后++(a++) 前++(++a) a++的值等于原变量的值
++a的值等于原变量自增后的值 自减:同自增理解 */ var a = 3;
console.log(a++);//3
console.log(++a);//5 var b =5; console.log(b--);//5
console.log(--b);//3 </script>
</head> <body> </body> </html>

5.2 测试结果

6、与、或、非

6.1 代码

<!DOCTYPE html>
<html> <head>
<meta charset="utf-8">
<title>逻辑运算符</title>
<style type="text/css"> </style> <script type="text/javascript"> /* JS中有三种运算符: !:非
所谓非运算符就是对一个布尔值进行取反操作,
true变为false ,false变为true 如果对非布尔值进行运算,首先转换为布尔值,然后取反 && : 和两边条件都成立
第一个值为true,会检查第二个元素
第一个值为false,不会检查第二个元素 ||: 两边条件满足其一
第一个值为true,不会检查第二个元素
第一个值为false,会检查第二个元素 */ var a = 123;
a = !a;
console.log(a); true && console.log("检查了右边");
false && console.log("检查了右边"); </script>
</head> <body> </body> </html>

6.2 测试结果

7 赋值运算符

7.1 代码

<!DOCTYPE html>
<html> <head>
<meta charset="utf-8">
<title>赋值运算符</title>
<style type="text/css"> </style> <script type="text/javascript">
/*
可以将负号右侧的值赋值给左侧 var a = 3;
a += a; 等价于 a = a + 3; a -= a; 等级于 a = a-3; a *= a; 等价于 a = a * a; a /= a; 等价于 a = a / a; a %= a; 等价于 a = a % a; */ </script>
</head> <body> </body> </html>

8、关系运算符

8.1 代码

<!DOCTYPE html>
<html> <head>
<meta charset="utf-8">
<title>关系运算符</title>
<style type="text/css"> </style> <script type="text/javascript"> /* 通过关系运算符可以比较两个值之间的大小关系, 任何值和NaN做比较都是false
关系成立返回true,否则返回false >:
判断左侧的内容是否大于右侧的内容,成立返回true
>=
<
<=
==
=== 不会对比较的内容进行转换,比较类型和内容是否相等 非数值的情况
- 对于非数值进行比较,会将其转换为数字然后在比较
- 如果符号两侧的值都是字符串,不会将其转换为数字进行比较,而会分别比较字符串中字符的Unicode */ console.log("dkdk" > "eerr") </script>
</head> <body> </body> </html>

9、条件运算符

9.1 代码

<!DOCTYPE html>
<html> <head>
<meta charset="utf-8">
<title>条件运算符</title>
<style type="text/css"> </style> <script type="text/javascript">
/* 条件运算符也叫三目运算符
语法:
条件表达式? 语句1:语句2; 执行的流程:先判断条件,符合执行语句1,否则执行语句2 */ var a = 5;
var b = 8;
a > b ? console.log("a大于b"):console.log("a小于b"); </script>
</head> <body> </body> </html>

9.2 测试结果

10 、优先级

  • 一般使用括号修改优先级的顺序

JavaScript基础&实战(2)js中的强制类型转换、运算符、关系运算符、逻辑运算符、条件运算符的更多相关文章

  1. javascript基础入门之js中的数据类型与数据转换01

    javascript基础入门之js中的数据结构与数据转换01 js的组成(ECMAScript.BOM.DOM)        js中的打印语句:        数据类型        变量      ...

  2. javascript基础入门之js中的结构分支与循环语句

    javascript基础入门之js中的结构分支与循环语句 程序的结构①顺序结构:自上而下:②选择(分支)结构:多条路径,根据不同的条件,只执行其中一个:③循环结构:重复某些代码④配合特定的语句实现选择 ...

  3. JavaScript基础&实战(3)js中的流程控制语句、条件分支语句、for循环、while循环

    文章目录 1.流程控制语句 1.1 代码 1.2 测试结果 2.弹窗提示输入内容 2.1 代码 2.2 测试结果 3.条件分支语句 3.1 代码 3.2 测试结果 4.while和 do...whil ...

  4. JavaScript基础&实战(1)js的基本语法、标识符、数据类型

    文章目录 1.JavaScript简介 2.输出语句 2.1 代码块 2.2 测试结果 3.JS编写位置 3.1代码 3.2 测试结果 4.基本语法 4.1 代码 5.标识符 5.1 代码 6.数据类 ...

  5. JavaScript学习10 JS数据类型、强制类型转换和对象属性

    JavaScript学习10 JS数据类型.强制类型转换和对象属性 JavaScript数据类型 JavaScript中有五种原始数据类型:Undefined.Null.Boolean.Number以 ...

  6. JavaScript基础:数据类型的中的那些少见多怪

    原文:JavaScript基础:数据类型的中的那些少见多怪 Javascript共有6种数据类型,其中包括3个基本数据类型(string,number,boolean).2个特殊数据类型(undefi ...

  7. 谈 JavaScript 中的强制类型转换 (2. 应用篇)

    这一部分内容是承接上一篇的, 建议先阅读谈 JavaScript 中的强制类型转换 (1. 基础篇) 前两章讨论了基本数据类型和基本包装类型的关系, 以及两个在类型转换中十分重要的方法: valueO ...

  8. 详细理解javascript中的强制类型转换

    将值从一种类型转换为另一种类型通常称为类型转换,这是显式的情况:隐式的情况称为强制类型转换,JavaScript 中的强制类型转换总是返回标量基本类型值,如字符串.数字和布尔值. 如何理解: 类型转换 ...

  9. JS在if中的强制类型转换

    JS在if中的强制类型转换 众所周知,JS在很多情况下会进行强制类型转换,其中,最常见两种是: 1.使用非严格相等进行比较,对==左边的值进行类型转换 2.在if判断时,括号内的值进行类型转换,转化为 ...

随机推荐

  1. Dapr学习(4)之eShopOnDapr部署(Rancher2.63&k3s)

    本篇主要讲述一下github上基于Dapr实现的商城demo在(K8s or K3s)环境中的部署实践,本文环境基于k3s&rancher2.6.3 1.eShopOnDapr源代码及概述 源 ...

  2. vue脚手架创建项目后使用路由报错Object(...) is not a function问题

    在这之前我做过的vue项目没有这种问题,今天突然出现这个问题,也检查了很久的代码,最后解决我也不知道我是哪一步做错了 首先我是创建的vue2项目,基本操作跟平常一样,在运用路由跳转的时候遇到这个问题 ...

  3. 笃情开源:我和 Apache DolphinScheduler 社区的故事

    背景 本文的主人翁是 2 次飞机参会现场交流,四天研究就把 DolphinScheduler 用上生产的来自车联网行业的大数据 boy - 黄立同学.怎么样,听起来是不是有点 crazy?下面就来看看 ...

  4. 大数据工作流任务调度--有向无环图(DAG)之拓扑排序

    点击上方蓝字关注DolphinScheduler(海豚调度) |作者:代立冬 |编辑:闫利帅 回顾基础知识: 图的遍历 图的遍历是指从图中的某一个顶点出发,按照某种搜索方法沿着图中的边对图中的所有顶点 ...

  5. BZOJ4569 [Scoi2016]萌萌哒(并查集,倍增)

    类似\(ST表\)的思想,倍增\(log(n)\)地合并 你是我家的吗?不是就来呀啦啦啦.还有要来的吗?没了!那有多少个家就映射多少答案呀 倍增原来这么好玩 #include <iostream ...

  6. Spring核心思想Ioc和Aop (面试)

    Spring核心思想Ioc和Aop (面试) 注意: Ioc和Aop并不是Spring提出的,在Spring之前就已经存在,Spring只是在技术层面给这两个思想做了非常好的实现. 1 Ioc 1.1 ...

  7. 一文带你弄懂 JVM 三色标记算法!

    大家好,我是树哥. 最近和一个朋友聊天,他问了我 JVM 的三色标记算法.我脑袋一愣发现竟然完全不知道!于是我带着疑问去网上看了几天的资料,终于搞清楚啥事三色标记算法,它是用来干嘛的,以及它和 CMS ...

  8. 微服务性能分析|Pyroscope 在 Rainbond 上的实践分享

    随着微服务体系在生产环境落地,也会伴随着一些问题出现,比如流量过大造成某个微服务应用程序的性能瓶颈.CPU利用率高.或内存泄漏等问题.要找到问题的根本原因,我们通常都会通过日志.进程再结合代码去判断根 ...

  9. [CF1386C] Joker (IOI 赛制,分治,整体二分+可回退并查集)

    题面 给一个 N N N 点 M M M 边的简单无向图,询问 Q Q Q 次,每次问你把编号在 [ l i , r i ] [l_i,r_i] [li​,ri​] 之间的边删掉后,该图是否存在奇数环 ...

  10. JZOJ3542冒泡排序

    题面 下面是一段实现冒泡排序算法的C++代码: for (int i=1;i<=n-1;i++)  for (int j=1;j<=n-i ;j++)  if(a[j]>a[j+1] ...