其他类型转换成字符串
xxx.toString() // varobject = {a:1};object.toString = [object Object] //这种方法对null undefined使用会报错xxx + '' //空字符串String(xxx) //函数式其他类型转换成布尔值
boolean(xxx)!!xxx字符串转换成数值
Number('xxx')parseInt('xxx',10) //转换成10进制整数 //parseInt('011') = 11 ;parseInt('011',8) = 9 ;parseInt('011',10) = 11 ;parseInt('s') = NaN ;parseInt('12s') = 12parseFloat('xxx') //转换成10进制浮点数'num'-0+'num'五个false值:null;undefined;NaN;0;'';
内存图
垃圾回收
如果一个对象没有被引用,那么它就是垃圾,会被浏览器回收删除。
浅拷贝和深拷贝
var a = {asd: 123}; var b = a; b.name = 'b'; a.name = 'a'; // b变导致a变,这就是浅拷贝
b变不会导致a变,就是深拷贝