你的位置:首页 > Java教程

[Java教程]JS高级程序设计2nd部分知识要点1


保存浮点数值需要的内存空间是保存整数值的两倍,因此ECMAScript会不失时机的将浮点数值转换为整数值
浮点数值的最高精度是17位小数
parseInt 字符串转换为数值,可传基数(8,16)
parseFloat 同上
区别:parseFloat始终会忽略前导的零,只解析十进制的值,16进制的字符串始终会转换成0。

 

后置递增和递减与前置递增递减重要的区别:递增与递减操作是在包含它们的语句被求值之后才执行的

示例:

var num1=2;
var num2=20;
var num3=num1--+num2;
alert(num3);//22
alert(num1);// 1
var num4=num1+num2;
alert(num4);

位操作符:

32位有符号整数,前31位表示整数的值,第32位用于表示数值的符号:0表示正数,1表示负数。表示符号的位叫做符号位,符号位的值决定了其他位数值的格式。

二进制补码(负数以二进制码存储)的步骤:

1>求这个数值绝对值的二进制码;

2>求二进制反码,即将0替换为1,将1替换为0;

3>得到的二进制反码加1;

按位非 ~ (NOT 波浪线):本质-操作数的负值减1.

按位与 & (AND ):只有两个数值对应位都是1时才返回1,任何一位是0,结果都是0.

按位或 | (OR):有一位是1的情况下就返回1,只有两个位都是0时才返回0.

按位异或 ^ (XOR):两个数值对应位上只有一个1时才返回1,如果对应的两位都是1或0,就返回0.

左移<<:左移不会影响操作数的符号位

有符号的右移>>:保留符号位(即正负号标记)从第二位开始

无符号右移>>> 正数的结果与有符号右移相同,负数的无符号位右移是以0来填充空位,不是像有符号右移那样以符号位的值来填充空位。

 

ECMAScript中的所有参数传递的都是值,不可能通过引用传递参数。