function setName(obj){
obj.name="endless";
obj=new Object();
obj.name="2evening";
}
var person=new Object();
setName(person);
alert(person.name); //endelss 这段代码摘自《javascript高级编程》。书上说javascript是按值传递参数,但是函数内的更改可以在函数外反映出来,这不是按引用传递的吗?如果是按引用传递,函数内参数被覆盖后却没有反映到函数外,这会又成按值传递了。关于这点十分头大,想不明白,那位大哥指点下。
obj.name="endless";
obj=new Object();
obj.name="2evening";
}
var person=new Object();
setName(person);
alert(person.name); //endelss 这段代码摘自《javascript高级编程》。书上说javascript是按值传递参数,但是函数内的更改可以在函数外反映出来,这不是按引用传递的吗?如果是按引用传递,函数内参数被覆盖后却没有反映到函数外,这会又成按值传递了。关于这点十分头大,想不明白,那位大哥指点下。
解决方案 »
- 求会as的进TT。。。
- 关于$("#rb_del").attr("disabled", false);兼容谷歌浏览器的问题
- 请教:jquery阻止事件冒泡不成功!
- 请教大侠,我想在客户端js脚本里获得ajax的TabContainer控件,当前显示的是哪个TabPanel,请问如何写?
- 如何在JS文件中动态加载JS文件
- 麻烦各位推荐一个JS混淆器
- 很难的一个问题,至今没解决
- 谁给详细讲一下正则表达式[^]的用法
- 如何生成一个自定义大小的浏览框......以及.....?
- Netscapeh中如何让一个文本框变成disable
- ajax get 中文参数的时候为什么需要转码
- javascript小技巧
期待高人了
name生效了
对于引用实例没有生效
obj.name="endless"; //执行时obj的值是person对象的地址
obj=new Object(); //创建了一个新的对象,并把对象的地址赋给obj变量,此时obj的值已经变成了新创建的对象的地址
obj.name="2evening";
//函数执行完成后,obj变量自动销毁
}
var person=new Object();
setName(person);
alert(person.name); //endelss
http://www.365xhzx.com/thread-361-1-1.html