1、进制之间的转换(代码实现)
思路:以十进制数做中间量,其余进制之间互相转换前先转换成十进制。
复制代码
1. 其余进制转换成十进制
> parseInt(非十进制数,第一个参数进制数)
此方法能够将非十进制数字转换成十进制数字
var num=111;
alert(parseInt(num,2)); // 7
复制代码
2. 十进制转换成其余进制
> 十进制数.toString(要转换成的进制)
此方法能够将十进制数转换成其余任意的进制数
var num=9;
alert(num.toString(2)); // 二进制,111
alert(num.toString(8)); // 8进制,11
复制代码
2、或运算(||)、与运算(&&)
> 用法一,表示判断
表达式1 || 表达式2
两个表达式中有一个为true,总体返回true,不然返回false
表达式1 && 表达式2
两个表达式必须都为true,总体返回true,不然返回false
复制代码
> 用法二,赋值(短路操做)
var val=表达式1 || 表达式2;
val会被赋值为第一个为true的表达式(数据类型也会赋给val),
若是全部的表达式都为false,val会被赋值为最后一个表达式(数据类型也会赋给val)
var val=表达式1 && 表达式2;
val会被赋值为第一个为false的表达式(数据类型也会赋给val),
若是全部的表达式都为true,val会被赋值为最后一个表达式(数据类型也会赋给val)
复制代码
3、位运算
> 按位或(|)
计算方法:两个数字转换成二进制进行比较只有位值都为0时才取0,不然取1
例如:14|15 (14 转换成二进制 1110
15 转换成二进制 1111
| 的结果 1111 ----》结果15)
复制代码
> 按位与(&)
计算方法:两个数字转换成二进制进行比较只有位值都为1时才取1,不然取0
例如:14&15 (14 二进制 1110
15 二进制 1111
& 的结果 1110 ----》结果14)
复制代码
> 按位异或(^)
计算方法:两个数字转换成二进制进行比较只有位值不相等时才取1,不然取零
例如:14^15 (14 二进制 1110
15 二进制 1111
^ 的结果 0001 ----》结果1)
复制代码
> 位运算NOT(~)
计算方法:数字求负,再减1
例如:~14 的结果是 -15复制代码