可能是自己一开始就一直以为php应该和其他语言在基础方面如出一辙,但结果我是错的,php作为以C语言开发出来的高级语言,其实和java、c++等语言来说,不完善的地方还有很多,有利也有弊,特别是自己接触了php的OOP时,感觉更深刻,所以决定系统的捡一捡java了。

同样作为弱语言的javascript脚本语言,使用起来我也是又爱又恨,不过所谓的恨大部分都是自己对语言的了解还不够。

叙述引用类型和值类型

首先说一下变量存在栈内存的结构,一个存储空间分两部分,前一部分存变量名,后一部分存变量值或指针。

值类型的后一部分存的就是变量值,它的复制会在栈内存里开辟新的存储空间来复制一份放进去:

var num1 = 5;
var num2 = num1;




而引用类型后部分存的是指针,指向实际值存储的地址,实际值在堆里,它的复制其实是变量名和指针的复制:
var obj1 = new Object();
var obj2 = obj1;

js中引用类型

Array(其实也是对象在js中)、Object、function