Chrome 箭头函数中的默认参数值

mfuanj7w  于 2023-08-01  发布在  Go
关注(0)|答案(3)|浏览(99)

我是ES6 JavaScript的新手,这意味着我正在探索它。我喜欢ES6的箭头函数和默认参数特性,这在下面的网站中提到。
http://es6-features.org/#ExpressionBodies
http://es6-features.org/#DefaultParameterValues
下面是我的ES6代码片段,我已经在Chrome 47中测试过了。我试图给予我的箭头函数的默认参数值,目前抛出的错误如下

<script type="text/javascript">
  'use strict';
  var greet = (name = 'Venkat') => (console.log('Hi ' + name + '!'));
  greet(); // expected output: Venkat
  greet('Venkatraman'); // expected output: Venkatraman
</script>

字符串
让我知道它是否可能,如果是这样,解释与解决方案,我在这里做错了什么。

rpppsulh

rpppsulh1#

不,那是不可能的(我想还不行)。你可以做的事情:

var greet = name => console.log('Hi ' + (name || 'Venkat') + '!');
greet(); // output: Venkat
greet('Venkatraman'); // output: Venkatraman

字符串
here
[2018年1月]我想现在所有主流浏览器都支持默认参数值

juzqafwq

juzqafwq3#

从今天的观点来看,这确实是可能的--我不知道当时是不是这样。
语法如下:

const arrowfunctionidentifier = (parameter = defaultValue) => {<content of the function>}

字符串
我的意思是它基本上和你的一样,只是函数体用了花括号。也许这就是关键的区别?
干杯
编辑:我添加了一点剪辑,用于测试目的:)

const greeting = (user = 'stranger') => {
  console.log(`Greetings! ${user}`);
};

greeting();
greeting('mwannags');

相关问题