C语言与javascript的不同之处

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/kangear/article/details/82179597

C语言与javascript的不同之处

介绍

最近会把一些C语言的小程序,小算法移植到js中,这里简单记录一下两种语言的不同之处。

数据类型

C语言中有int,char,float等等,而js中只有let(先忽略var),所以转换过程中遇到C语言中的数据类型要换成let

除法

C语言中常用一种除法整除取整比如int a = 5/2;结果就是2。而在js中这样计算默认会变成2.5,要达到C语言的写法要改成let a = parseInt(5/2)
除法取余和C语言一样直接使用%就可以了。

取反

C语言中并没有真正的布尔类型,一般是用0作为假,非0作为真,在if判断时会和数字类型混用,比如:

int hasHouse = 0;
if (!hasHouse) {
  doMakeMoney();
  hasHouse = !hasHouse;
}

如果js也这样写的话,

int hasHouse = 0;
if (!hasHouse) {
  doMakeMoney();
  hasHouse = !hasHouse;
}

最后hasHouse会变成true或者false这样的bool类型,而不像C语言只会在0和1之间变化。js处理这种情况最后把只用作bool的,在js中改成bool类型

int hasHouse = false;
if (!hasHouse) {
  doMakeMoney();
  hasHouse = !hasHouse;
}

目前遇到这些,遇到新的再更新…

猜你喜欢

转载自blog.csdn.net/kangear/article/details/82179597