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

怎么理解“引用在意义上是弱类型的”

怎么理解“引用在意义上是弱类型的”

夜27 2016-10-11 19:30:18
函数参数如果是复合类型,他们是按引用传递。
查看完整描述

2 回答

已采纳
?
慕运维6514616

TA贡献103条经验 获得超37个赞


引用类型也是值传递,将一个函数外声明的对象传入并修改并不会影响其在外部的值,JS不能直接操作内存地址。

而且传入的参数不会进行类型检查,甚至连传入的个数也没有限制,因为传入参数都保存在函数内置的一个数组arguments中。

查看完整回答
反对 回复 2016-10-11
  • 夜27
    夜27
    弱类型我理解了。再问一下: 传一个对象进函数里,和传一个基本类型进函数里,可以认为函数操作的是它们的副本吗?
  • 慕运维6514616
    慕运维6514616
    不一定,看编译器怎么规定了,比如像数组,操作的基本都是原数组,而操作字符串都是返回一个新值,原值不会改变。JS、PHP本身就是弱语法弱类型,没必要去考虑其地址,都是值传递。 满意请采纳
  • 夜27
    夜27
    不好意思,最近没上幕课
?
fantacy吴贝

TA贡献11条经验 获得超10个赞

复合类型按引用传递,这里的复合类型是指对象,按引用传递是指,他们共用一个对象,当这个对象中的数据发生变化时,引用该对象的变量中的数据也发生变化,他们共用一个数据,而不是创建一个数据副本。对象改变所有引用该对象的变量全部发生变化。有更多问题欢迎私信
查看完整回答
反对 回复 2016-10-12
  • 2 回答
  • 0 关注
  • 1644 浏览
慕课专栏
更多

添加回答

举报

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