作用域简析

来源:互联网 发布:贪玩传奇盛世翅膀数据 编辑:程序博客网 时间:2024/06/04 18:58
有如下函数:调用后输出:
class A{
do(){
var a = new A()
var x = 0;
x ++;
console.log(x);
}
/*执行:a.do();==>输出:1*/

private y = 0;
do2(){
this.y ++;
console.log(y);
}
/*
do2();==>输出:1
再执行一次do2();==>输出:2
再执行一次do2();==>输出:3
*/

var b = new A();
private z = 0;
do3(){
var z = z;
z ++;
console.log(z);
}
/*
执行:b.do2();==>输出:1
do3();==>输出:1
再执行do3();==>输出:1
*/
//引用拷贝
private z = {x : 0};
do4(){
var d = z;
d.x ++;
console.log(d.x);
}
/*
执行:do4();==>输出:1
再执行do4();==>输出:1
*/

}

变量赋值分为两种:一种是值拷贝,另外一种是引用拷贝
null,undefined,boolean,number属于简单型,即传值
string,object,function属于复杂型,即传引用
如:var x = 2;
历经了三个步骤:1、定义name x
2、使value为 2
3、name指向value,即name x -> value 2

如:var a = "x";
var b = a;
b = "y";
a = ?;
上述例子经历了四个步骤:1、定义name b
2、value ?
3、b指向value,b -> value;
4、a.value复制b.value
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 浑身起红包很痒怎么办 手太粗糙怎么办小窍门 小腿长疙瘩很痒怎么办 腿过敏起红疙瘩怎么办 肚子上起红疙瘩很痒怎么办 小蚂蚁咬了肿了怎么办 锦鲤鱼尾巴烂了怎么办 泰迪身上长白毛怎么办 鱼身上有红斑了怎么办 新买锦鲤不吃食怎么办 鱼身上有红血丝怎么办 大腿内侧有红色条纹怎么办 腿上出现红血丝怎么办 孕妇有脚气,很痒怎么办 孕晚期脚气很痒怎么办 孕期有脚气很痒怎么办 激光后留下色沉怎么办 腋下很黑怎么办怎样才能变白 屁股上长一块癣怎么办 鼻两侧一热发红怎么办 脸上起皮发红痒怎么办 自癜风发红发痒怎么办 脸又干又痒怎么办 脸发红还有点痛怎么办 脸过敏了红痒怎么办 脸两边一片红痒怎么办 婴儿大腿内侧破皮怎么办 宝宝大腿根淹了怎么办 大腿一走路就疼怎么办 下面痒怎么办用什么洗 长藓怎么办用什么药膏 小腿长湿疹很痒怎么办 产后排不出大便怎么办 3岁宝宝大便不通怎么办 腿上干燥像鱼鳞怎么办 一岁脸上长癣怎么办 脖子长了一片癣怎么办 深圳摇到车牌后怎么办 发现车被套牌了怎么办 我车牌被套牌了怎么办 车子被别人套牌怎么办