为了账号安全,请及时绑定邮箱和手机立即绑定

问一道js的基础题

问一道js的基础题

梦里花落0921 2018-08-13 09:10:27
function setName(obj){     obj.name = "obama";     obj = {name:"clinton"}; } var president = {name:"bush"};setName(president);执行完只段代码以后president.name的值为什么是"obama"记得javascript高级程序设计中讲过,就是忘记在哪页了
查看完整描述

1 回答

?
阿晨1998

TA贡献2037条经验 获得超6个赞

一句一句的分析代码:

var president = {name:"bush"};

president指向{name:"bush"}对象

setName(president);

obj指向president指向的对象, 也就是{name:"bush"}

obj.name = "obama";

obj指向的对象(也就是president指向的对象)的name属性值改为"obama"

obj = {name:"clinton"};

obj的指向从{name:"obama"}对象改为了{name:"clinton"}对象
president仍然指向{name:"obama"}对象


查看完整回答
反对 回复 2018-09-19
  • 1 回答
  • 0 关注
  • 631 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信