美文网首页
类型转换与运算符

类型转换与运算符

作者: 小冷哥WW | 来源:发表于2018-09-19 16:10 被阅读0次

1. 数据类型转换

强制类型转换
parseInt : 将数字或者字符串转化整形
parseFloat: 将数字或者字符串转化为浮点型。如果转化的内容结果是整形,那么结果就是整形,不会是浮点型。

Number('内容'):结果只有两种一种是数字类型,一种是NaN。只要内容中有一个不是数字的字符,那么结果就是NaN。
String: 将内容转化为字符串类型。
当时用string转化null ,undefined,布尔值的时候会直接将这个原始的数据类型转化为字符串。
Boolean:把内容转化成布尔值。 把任何内容转换成true或者false。

转为布尔值为false的情况:
undefined
null
false
0
NaN
''或者"" 空字符串

总结:
string类型,只要不是空字符串,都会转为true。
number类型,只要不是0,即使是负数,都会转成true。
object类型,只要不是null类型,都会转换成true。
undefined类型,都会转换成false。

隐式类型转化:
判断里面: 结果转化为布尔值。
具有字符串的加法:两边都要转化为字符串。就是字符串的拼接。
数字与字符串比较大小:字符串要转化为数字。
减法运算的时候,字符串要转化为数字。
技巧:快速的实现字符串转化为数字。减0运算。

2.运算符号

2.1算术运算符

加法运算符: 数字的加法 , 字符串的加法。
数字的加法就是简单的数字相加,要求加号两边都是数值类型。
字符的加法是字符串拼接,只要加好两边有一边是字符串,那么这个运算就是字符串的拼接。(字符串必须是放在引号里的)。
减法运算符: 数字的减法,会进行隐式类型转化,
如果减号两边有一边不是数字,那么会自动转化为数字类型。
乘法(*)与除法(/):就是简单的数字运算。
JS里面除法运算的除数是可以为0。结果是无穷。Infinity
取余(%):余数运算。就是除法运算在得到结果为整数的情况下,被除数剩下的值。
余数: 5 2 2 ----1 5%2 = 1
10 3 3 ----1 10%3 = 1
取余运算的符号只与被除数有关,被除数是什么符号,余数就是什么符号。
绝对值: 某一个数字的正数值。
正数的绝对值就是本身,负数的绝对值是相反数,0的绝对值就是0.

Math.abs() 获取绝对值。
Math.pow() 次方运算
Math.random()随机数
虽然浮点数也能够进行取余运算,但是极度不精确。建议不要使用。

案例: 用JS实现表格的各行变色。
var a = document.getElementsByTagName('tr')
for(var i = 0 ;i<a.length; i++){
if(i%2==0){
a[i].style.background="red";
}else{
a[i].style.background="blue";
}
if(i == 0){
a[i].style.background="#fff";
}
}
自增于自减运算:
i++: 对 i 加一然后结果赋值给 i 。 和i= i+1操作一样。
i--: 对 i 减一然后结果赋值给 i 。 和i= i-1操作一样。
++i: 对 i 加一然后结果赋值给 i 。 和i= i+1操作一样。
--i: 对 i 减一然后结果赋值给 i 。 和i= i-1操作一样。
区别:
如果自增自减运算参与其他运算,那么后加加要先参加运算,然后在自增或者自减。前加加先自增或者自减,然后再参与运算。

乘方运算(): 8^2
3
2 = 9
赋值运算: =
var a = 1;
a = a+2; ===> a += 2;
+=
-=
*=
/=
%=

2.2比较运算符

< 小于号 > 大于号 >= <=
== 判断值是否相同
=== 判断值与类型是否相同
!= 判断值是否不同
!== 判断不全等。
这些比较运算符一般都是使用需要判断的地方,比如说if,while等小括号里面,返回值一定是一个布尔值。
如果是数字与字符串进行比较,那么字符串会自动的转化数字进行比较。
如果是两个字符串进行比较,那么先比较第一个字符,第一个字符大的字符串大,第一个字符相同再比较第二个字符。
字符大小是按照Unicode编码确定的。

Unicode编码:Unicode(统一码、万国码、单一码)是计算机科学领域里的一项业界标准,包括字符集、编码方案等。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。
NaN与任何值比较都是false。

2.3逻辑运算符

&& 与 , 符号两边的条件同时符合才会返回true
|| 或 , 符号两边只要有一边符合条件就会返回true
! 非 , 取反,true转为false,false转为true。
短路运算:
当逻辑判断操作前面的运算已近得出最终结果的时候,后面的操作就不在执行。具体指:或操作的第一个判断返回true,与操作的第一个判断返回false。
var i = 10;
if(4>2 || 10 > ++i){
console.log(i)
}

2.4三元运算符。

三元:三个操作数
自增,自减:一元操作符 。 i++
== , > :二元操作符 。 a >b ;
?:
条件?操作1:操作2;
类似于:
if(条件){
操作1;
}else{
操作2;
}
a>10?console.log(a):console.log(10);

相关文章

  • Python学习记录

    变量、运算符与数据类型 注释: 运算符 变量和赋值 数据类型与转换

  • 2020-06-12 day 2

    数据类型转换 自动类型转换 强制类型转换 运算符 加减乘除字符串加是追加的方式比较运算符== < > >= <= ...

  • day03(2017.9.25)

    数据类型的装换 转换为Number 转换为String 逻辑运算符 ||或 &&与 !非 运算符优先级

  • JS 里的数据类型转换

    如果运算符发现,运算子的类型与预期不符,就会自动转换类型。 强制转换 any→String() any→Numbe...

  • js数据类型和运算符

    数据类型: 强制类型转换: 运算符: 逻辑运算: 运算符: 算数运算符:

  • 自动转换函数

    内置类型间转换 自定义类型的类型转换 使用构造函数进行类型转换 例如 自动转换函数(运算符转换) 例子

  • Java语言基础

    Java主类结构基本数据类型变量与常量运算符数据类型转换

  • ==、===与Object.is()对比

    ==:等同,比较运算符,两边值类型不同的时候,先进行类型转换,再比较;===:恒等,严格比较运算符,不做类型转换,...

  • 二 基本运算符

    01 比较运算符 了解 02 逻辑运算符 真除法、小数截断 数值类型转换 小数类型 分数类型 进制整数转换 定义变...

  • JS数据类型和运算符

    数据类型: 强制类型转换: 其他进制数字: 运算符: 逻辑运算: 运算符: 算数运算符:

网友评论

      本文标题:类型转换与运算符

      本文链接:https://www.haomeiwen.com/subject/wbminftx.html