JavaScript中逻辑运算符、位运算符以及简单数据类型转换的问题
2017-07-15 16:12
211 查看
1.类型转换
1)数字转换
parseInt()和parseFloat()
parseInt("123"); //结果为 123 parseInt("12a"); //结果为 12 当检测到错误之后就会停止 parseFloat("0.8"); //结果为 0.8 parseFloat("0.8a") //结果为 0.8
Number()
Number("123"); //结果为 123 Number("123a"); //结果为 NaN
2)字符串转换
tostring() —-String类中的方法
var i = 666; alert(typeof(i.toString())+":"+i.toString); /*运行结果为:string:666 */
String()
var i = 666; alert(typeof(String(i))+":"+String(i)); /*运行结果为:string:666 */
3)布尔类型转换
Boolean()
Boolean(666); //输入数字 true Boolean(""); //输入空串 false Boolean("2a"); //输入字符串 true Boolean(null); //输入null false Boolean(0); //输入0 false Boolean(new Object()); //输入对象 true
Number(),String(),Boolean()均属于 强制类型转换
2.逻辑运算符的问题 【&&】与 【||】或 【!】非
当用逻辑运算符连接时,两边的语句均会转换成Boolean类型,再进行运算。
1)基本问题
A&&B
当A为true并且B也为true时,表达式为true;二者有一为false则表达式为false。
A||B
当A、B至少有一者为true时,表达式为true;二者均为false则表达式为false。
!A
当A为true表达式值为false;当A为false表达式值为true。
2)短路计算
false && (...)短路计算为false
true || (...)短路计算为true
能转化为false值的表达式有:false 、空字符串 、0 、NaN、 undefined、 null
能转化为false值的表达式有:true、非空字符串、非零数字、对象
3)【&&与&】【||与|】的区别
&&和||为逻辑运算,不啰嗦了...
【& 按位与运算】
例如
7&8
首先会将7和8分别转换成二进制编码:即(0000 0111)&(0000 1000)
然后每一位分别进行与运算得到结果为 0000 0000 即原表达式值为:0。
【| 按位或运算】
例如
7|8
同理按位或运算的到 0000 1111,则表达式值为:15。
4)逻辑运算符的优先级
! > && > ||
相关文章推荐
- 03 JavaScript基础之--简单数据类型转换
- JavaScript介绍及数据类型介绍以及数据类型转换
- Java 基本数据类型与其包装数据类型以及字符串(String)之间的转换问题
- java:关于short s1=1;s1=s1+1;short s1=1;s1+=1;short s3=s1+s2;中存在的简单数据类型转换问题的理解
- java:关于short s1=1;s1=s1+1;short s1=1;s1+=1;short s3=s1+s2;中存在的简单数据类型转换问题的理解
- (详解)Java数据类型转换以及精度损失的问题
- javascript入门·简单运算和数据类型转换
- vue.bootstrap.demo.和vue动画和简单介绍JavaScript数据类型之隐式类型转换
- javascript的基本数据类型以及转换
- 详解JavaScript的数据类型以及数据类型的转换
- 简单介绍JavaScript数据类型之隐式类型转换
- 简单介绍JavaScript数据类型之隐式类型转换
- JavaScript数据类型以及数据类型转换
- 简单问题(2)---数据类型转换的潜规则
- 简单问题(1)---数据类型转换的潜规则
- Java基础小知识——基本数据类型和字符串以及字节数组的转换
- 有符号与无符号的类型转换以及数位扩展问题
- Oracle自定义函数解决数据类型转换出错的问题
- Intent传值问题(非Integer and String 数据类型)以及 intent使用方法
- 关于sql条件语句where id in (@参数)执行报错问题(转换成数据类型 int 时失败)(