是什么?
var brackets = {
'(': ')',
'{': '}',
'[': ']'
};
从以下代码中做什么?你能举例说明这种物体的用途吗?我知道对象可以有方法和属性,但括号到对面的映射是什么意思?
// Use an object to map sets of brackets to their opposites
var brackets = {
'(': ')',
'{': '}',
'[': ']'
};
// On each input string, process it using the balance checker
module.exports = function (string) {
var stack = [];
// Process every character on input
for (var i = 0; i < string.length; i++) {
if (brackets[stack[stack.length - 1]] === string[i]) {
stack.pop();
} else {
stack.push(string[i]);
}
}
return !stack.length;
};
答案 0 :(得分:1)
此代码检查所有左括号是否在给定字符串中具有相应的右括号。这是面试中常见的编码练习。出于某种原因,雇主希望聘请具有良好Google搜索技能的开发人员。
答案 1 :(得分:0)
var brackets = {
'(': ')',
'{': '}',
'[': ']'
};
上面的代码是名为括号的javaScript对象的定义。此对象具有三个设置为值的字符串字段。这些字段的名称恰好是&#39;(&#39;,&#39; {&#39;,&#39; [&#39;,这些值恰好是&#39;)& #39;,&#39;}&#39;,&#39;]&#39;分别。
他们可能是:
var brackets = {
'ABC': ')',
'XYZ': '}',
'BBC': ']'
};
我认为你只是对变量的奇怪名称感到困惑。在这种情况下使用的是因为这是括号匹配代码。
要使用这些字段,您可以使用括号表示法:
var test = brackets['('];
这将给出&#39;)&#39;的字符串值。到测试变量。
点符号:
brackets.(
不会工作,因为它是一个特殊角色。更多信息:difference between dot notation and bracket notation in javascript