相关疑难解决方法(0)

在javascript变量名中使用冒号(例如a:b:c)

我刚刚注意到我可以在javascript中执行以下操作...

a:b:c:d = "happy days";
a:b:c = function(text){alert(text);};
Run Code Online (Sandbox Code Playgroud)

但我不能......

var a:b:c:d = "happy days"; 
// or
var myObj = {prop:a:b:c:d};
Run Code Online (Sandbox Code Playgroud)

在任何情况下我都不希望这种语法有效.当我成功使用'a:b = x'符号时,有没有人知道发生了什么?

javascript

6
推荐指数
2
解决办法
3100
查看次数

这个箭头函数如何不给出任何错误?

我只是遇到了一些代码,然后我做了一个测试,发现了一些我不明白的东西。

hey(
  () => {},
  () => {
    foo: "bar";
  }
);
Run Code Online (Sandbox Code Playgroud)

为什么以下语法是有效的语法?在第一个参数中,我可以理解,因为它是一个空函数作用域,但是在第二个参数中,它如何不给我一个错误?

如果它返回一个对象,它应该在最后({...})接受并且不接受;,所以这意味着第二个参数不是一个对象。

如果它不是一个对象,它是什么?为什么不是语法错误?

这里发生了什么黑色的javascript魔术?

这是关于codesanbox的示例,它不会给我任何语法错误。

编辑

我刚刚发现了一些其他奇怪的东西。

hey(
  () => {},
  () => {
    "bar"; // without foo:
  }
);
Run Code Online (Sandbox Code Playgroud)

这怎么不给任何错误?

javascript ecmascript-6 arrow-functions

0
推荐指数
1
解决办法
57
查看次数

标签 统计

javascript ×2

arrow-functions ×1

ecmascript-6 ×1