Javascript:函数调用相邻对象?

swo*_*edj 3 javascript closures functional-programming

你将不得不原谅我,因为我确信这在其他地方得到了解决,但我不知道该怎么称之为语法或这个例子所说明的概念.这个get()函数如何知道我传入的参数是否引用了相邻数组的索引?我没有给get()任何指示我指的是什么对象,除非在它旁边的括号中放置一个对象具有这种效果.它是否正确?这里是否有一个更广泛的概念,我不知道涉及接近和函数调用?

function get(prop) {
  return function(obj) {
    return obj[prop]
  }
}
get(1)([1,2,3]);

// output = 2
Run Code Online (Sandbox Code Playgroud)

she*_*lak 6

如果你分成get(1)([1,2,3])两行,这可能会更有意义:

var get1Function = get(1);
get1Function([1,2,3]) 
// output = 2
Run Code Online (Sandbox Code Playgroud)

注意:执行此行后

var get1Function = get(1);
Run Code Online (Sandbox Code Playgroud)

get1Function 现在设置为 function(obj) { return obj[1] }