当前位置: 首页 > 面试题库 >

分配左侧的Javascript对象括号表示法({Navigation} =)

司寇高洁
2023-03-14
问题内容

我以前没有看过这种语法,并且想知道它的全部含义。

var { Navigation } = require('react-router');

左侧的括号引发语法错误:

意外的标记 {

我不确定webpack配置的哪个部分正在转换或语法的目的是什么。这是和谐的事情吗?有人可以启发我吗?


问题答案:

这称为解构分配,它是ES2015标准的一部分。

析构分配语法是一个JavaScript表达式,它可以使用与数组和对象文字的构造类似的语法从数组或对象中提取数据。

对象解构

 var o = {p: 42, q: true};
 var {p, q} = o;

 console.log(p); // 42
 console.log(q); // true

 // Assign new variable names
 var {p: foo, q: bar} = o;

 console.log(foo); // 42
 console.log(bar); // true

阵列解构

var foo = ["one", "two", "three"];

// without destructuring
var one   = foo[0];
var two   = foo[1];
var three = foo[2];

// with destructuring
var [one, two, three] = foo;


 类似资料:
  • 问题内容: 谁能解释下面为什么在javascript中分配键的原因/方式? 返回: 问题答案: 这是新的ES2015(正式名称为ES6的EcmaScript规范)计算的属性名称语法。这是您从ES3/ 5知道的任务的简写: 是用于以下方面的语法糖:

  • 问题内容: 这等效于: 我相当确定这是定义变量的顺序:var3,var2,var1,这等效于此: 有什么方法可以用JavaScript确认吗?可能使用一些分析器? 问题答案: 其实, 是 不是 等同于: 区别在于范围: 实际上,这表明分配是正确的关联。该示例等效于:

  • 问题内容: 我试图理解和符号之间的区别。在下面的问题中,我使用正确的答案。当我使用它不起作用。有人可以解释为什么与众不同。 问题答案: 使用点表示法时,表示对象中的实际属性,该属性将不存在。因此,返回不等于的。 使用表示法时,您将使用变量中的名称访问对象中的属性。因此,这将起作用。 例如, 这将打印, 因为,没有成员命名(尝试获取名称为的成员),而在下一种情况下,有成员命名为(尝试获取具有in的值

  • 问题内容: 例如,如果括号/括号在以下情况中匹配: 依此类推,但如果括号/括号不匹配,则应返回false,例如: 等等。你能检查一下这个代码吗?提前致谢。 问题答案: 您的代码在处理’{‘和’}’字符时有些困惑。它应该与如何处理’(’和’)’完全平行。 这段代码经过您的稍微修改后,似乎可以正常使用:

  • 给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。 注意空字符串可被认为是有效字符串。 示例 1: 输入: "()" 输出: true 示例 2: 输入: "()[]{}" 输出: true 示例 3: 输入: "(]" 输出: false 示例 4: 输入: "([)

  • 问题内容: state.charAt(i)部分在标题中指出了问题。如果我的方法不是完全错误的,该如何解决该问题。 问题答案: 之所以不起作用,是因为它是类的方法-即它是一个函数,并且您无法在Java中为函数赋值。 如果您想逐个字符地遍历一个字符串,我可能会这样做: 然后改为对GuessAsChar进行操作。根据您的需要,可能有更好的方法(如更整洁的方法)来搜索字符串中的字符对等。