这个其实没啥好写的 前几天出了nodejs6.0,于是今天想看一下更新的东西。。。结果尼玛 你猜怎么着。。。已经更新到6.1了。。。。我。。。。
然后看了下因为主要是更新了v8引擎 所以支持了非常之多的ES2015的内容 具体看这个 http://node.green 几乎所有都支持了
关于函数参数的内容 之前没有注意太多 然后突然发现这个 试了一下运行这个 发现一个有意思的东西 关于arguments变量的
1 | (function (a, b, c = 2) { |
以及不包含默认变量的
1 | (function (a, b, c) { |
发现两个的结果不一样
当使用默认参数这个语法的时候(即使用ES2015语法时,无论是否传入该参数),arguments与参数是相互独立的,修改一边不会影响到另外一边
而不使用这个语法的时候,和大家所知道的一样,arguments与传入的参数相互绑定,未传入的参数不作为arguments的元素
除了这个默认参数会有这个区别之外 列表里面其他几个ES2015里涉及到的函数参数相关的也都是这样
嗯呢 就这样先 还有强烈不推荐使用arguments这个东西 有点破坏语法的感觉 也会影响代码优化