-1

在阅读了第一类对象之后,我决定让我的新的第一类对象像一个函数,但使用另一个名称。我搜索并发现了很多关于 javascript 函数的东西。


我的研究结论

1)每个函数都是一个对象,也可以被视为一个对象。

看这里的代码:

var myfunc3 = new Function(
                 "a", " return a + 1;");

从页面this

据我所知,之前定义的任何函数都可以使用new构造函数调用,即:

    var person = function(name, age){
       this.name=name;
       this.age = age;
}

现在我可以通过使用new它来调用它:

var x = new person("tom", 34); 

所以从上面的例子中我可以说之前定义的函数然后 withnew可以再次调用!


我不知道什么

1)函数如何使用它的圆括号,

2)看不懂线路Function( "a", " return a + 1;");

3)我们如何实现功能?


我知道你肯定会不喜欢这个问题,但我想这样做是因为我想了解 JavaScript 的每一个细节。

谢谢!

4

2 回答 2

1

1) 这是调用函数的语法,在语言中定义。

f(a); // calls the function "f" with the argument "a"

2) 函数是一等对象,这意味着它们可以像任何其他对象一样被传递,并且像其他对象一样它们具有构造函数,Function. 构造函数通过在新的隔离范围内评估Function代码来创建一个新函数,因此您无法访问周围的变量。同样,是 的一种形式,避免它,这不是在 JavaScript 中创建函数的方式。Functioneval

3)你没有实现一个功能。函数是已经实现的对象。在 JavaScript 中有两种创建函数的方法。函数声明:

function f(){}

和一个函数表达式:

var f = function(){};

不同之处在于吊装。参见var functionName = function() {} vs function functionName() {}

于 2014-03-27T05:02:59.953 回答
0

要回答你的问题,

  1. 圆括号是包含参数的语法。

  2. 它可能是一个名为Function接受两个参数的函数。

  3. 您可以通过使用参数并在函数内部执行一些逻辑来实现函数,也可以使用return关键字返回某些内容。

例如:

没有的功能return

function Hi(name){
  alert("Hi "+name);
} // Calling it like this: Hi("John"); will alert "Hi John"

以及返回的函数:

function Hi(name){
  return "Hi "+name;
}// You can store what's returned in a variable like this: var text=Hi("John");alert(text);
于 2014-03-27T04:56:50.610 回答