JS的知识补丁

1:javascript 有符号右移0位用于取整。

 1 var a = (-0.331*1) >> 0;
 2         b = (-0.331*10) >> 0,
 3         c = (-0.331*100) >> 0,
 4         e = (0.331*1) >> 0,
 5         f = (0.331*10) >> 0,
 6     console.log(a);//0
 7     console.log(b);//-3
 8     console.log(c);//-33
 9     console.log(e);//0
10     console.log(f);//3

 2:string 是值类型还是引用类型?

在js里面,把数据类型分为两组,即基本类型和引用类型。

区分:

基本类型在内存中具有固定的大小,而引用类型则不同。例如,对象可以具有任意的长度,无固定大小。数组也是。

基本类型变量存的是数据的具体值,而引用类型变量保存的是值的引用。

因此数值、布尔值、null和未定义(undefined)都属于基本类型。对象、数组和函数则属于引用类型。

string类型有些特殊,因为字符串具有可变的大小,所以显然它不能被直接存储在具有固定大小的变量中。由于效率的原因,我们希望JS只复制对字符串的引用,而不是字符串的内容。但是另一方面,字符串在许多方面都和基本类型的表现相似,而字符串是不可变的这一事实(即没法改变一个字符串值的内容),因此可以将字符串看成

行为与基本类型相似的不可变引用类型

原文地址:https://www.cnblogs.com/Hale-Proh/p/7072650.html