js变量引用(指针)

访客4年前黑客文章733

1.变量类型:基本类型和引用类型

基本类型:Number,Boolen,null,String,Underfined 存放在栈内存中,数据长度是牢固的。
引用类型:Object存在堆内存中,数据长度是转变的(同时有栈内存中有一个指针指向这个Object的)。


2.引用类型的Object能随便指定新的成员,然则对于基本类型就是无效。

var str=’ahui’;
str.name=’xiaoming’;//无效。
alert(str.name);//undefined


3.关于复制

基本类型:在新的栈内存中天生一个副本

var a='stra',b;
b=a;//这里会所b数据拷贝到a所在的栈内存中
b='strb';//a='stra'


引用类型:在新的栈内存中存一个相同的指针
也就是说:其赋值不会开拓新内存空间。两个变量会保留完全相同的数据。

var objA=new Object();
objA.name='stra';
var objB=objA;//objB在栈内存的指针和objA在栈内存中的指针是值是相同的——指向同一个堆块
objB.name='strb';
alert(objA.name);//strb
alert(objB.name);//strb


4.传参数——js中所有的参数都是按值传送的,而不是按引用。

(这一点等同于复制)
注:按值通报并不意味着你所传参数不会由于函数的执行而受影响。若是参数自己是引用类型,那么所复制的参数自己也包罗相同的指针,参数的改变当然会影响到所传的变量。



var o=new Object;
o.name='ahui';
function func(obj){
    obj.name='This variable is changed';
}
func(o);
alert(o.name);//This varibale is changed


思源资源网:分类流动

1.阿里云: 本站现在使用的是阿里云主机,平安/可靠/稳固。点击领取2000米代金券、领会最新阿里云产物的种种优惠流动点击进入

相关文章

截至5月8日24时新型冠状病毒肺炎疫情最新情况

5月8日0—24时,31个省(自治区、直辖市)和新疆生产建设兵团报告新增确诊病例1例,为境外输入病例(在天津);无新增死亡病例;新增疑似病例2例,均为境外输入病例(在上海)。 当日新增治愈出院病例5...

预约深圳商务价格表

哪有预约深圳市商务要多少钱,那麼哪些平台预约上海市商务社会经济学。平台为大伙儿搜集了详尽的商务材料相片,预约內容、地址、价目表、服务和女学妹联系电话手机微信等。 深圳市商务预约价目表 上海市商务:sh...

红茶有哪些品种(中国十大红茶排行榜)

  绿茶是以油茶树的嫩叶、新芽为原材料,在历经一系列炒茶加工工艺特制而成的全发酵茶。又因该茶在冲调之后的茶褐色为鲜红色,进而而出名“绿茶”。那麼你了解我国红茶种类都有哪些吗?下面就跟随我一起看一看中国...

一个主角被一老人传功后离家三年回来三年中认识了

Windows Server 2008 R2 for x64-based Systems Service Pack 13、在Windows 7, Windows Server 2008, and Wi...

如何加入世界第一黑客组织(世界十大黑客组织)

如何加入世界第一黑客组织(世界十大黑客组织)

     这里梳理了十大黑客组织,看看他们是如何“改变世界”的。   在过去的几年中,网络攻击变得日益频繁、规模也与日俱增。从针对个人电脑的恶作剧逐渐发展为具有一定规模的“活动”,例如对大公司重要数据...

高中毕业怎么找工作(学历低也能找到工作!)

  经常有学员来跟我说,我初中毕业,没考上高校,或是不愿上大学,能够出去干什么?   每一次听见那样的话,都感觉尤其的悲痛。初中毕业也就刚成年人,可以干什么呢?无论干什么工作,全是吃青春饭。没有一个一...