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

这段js代码的执行结果如何解释?

这段js代码的执行结果如何解释?

杨魅力 2018-08-14 10:10:05
var arr = []var f = function(){  console.log('f执行');  console.log(arguments)}var s = function(){  console.log('s执行');  arr = [1,2,3]  return 'xxx'}f('1', arr, s(), arr)//以下是执行结果//s执行//f执行//["1", Array[0], "xxx", Array[3]]
查看完整描述

1 回答

?
回首忆惘然

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

f('1', arr, s(), arr)

f以里面4个为参数,所以要把参数一一计算出具体的,'1'值是'1',arr是arr,s()是执行函数返回的结果'xxx',这里修改了arr的引用,所以arr这次返回了一个新的数组对象
参数都计算出来了,然后就执行f函数体了。

另外需要注意下面这种情况:

var arr = []var f = function(){  console.log('f执行');  console.log(arguments)
}var s = function(arr){  console.log('s执行');
  arr = [1,2,3]  return 'xxx'}

f('1', arr, s(), arr)


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

添加回答

举报

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