NutzCN Logo
灌水 js函数的形参可以指定默认值?
发布于 183天前 作者 Tomcat 99 次浏览 复制 上一个帖子 下一个帖子
标签:

下面的代码来自今天ruanyf的微博:

var x = 1;

function foo(x = x) {
  console.log(x);
}

foo();

代码在V8引擎下不能正常运行,他认为是个bug。没搞懂这个语法,看起来像是默认值。改造了一下就可以运行了:

var y = 1;

function foo(x = y) {
  console.log(x, arguments.length);
}

foo();
y = 2;
foo();

结果很喜人:好像真的是默认值,但是arguments的length是0。这不会给代码带来困扰么?

1 回复
添加回复
请先登陆
回到顶部