2013-03-11 76 views
1

这是我第一次浏览了一段时间后发现的,我是javascript新手,但我很难弄清楚这一点。调用函数时出现问题

我想调用我创建的函数,每次我试图调用它...我被告知我没有调用该函数。

我错过了什么?

//Simple greeting function 
var greeting = function (name) { 
console.log("Great to see you," + " " + name); 
}; 

//Calling function 
var greeting = function(name) { 
console.log("Hello" + "" + name); 
} // this was missing in the original question 

,或者如果我尝试

functionName = function(name) 

我会得到一个语法错误

+0

它看起来好像在问候语功能上有一个右大括号。 – 2013-03-11 03:28:01

回答

1

什么?试试这个:

var greeting = function(name) { 
    console.log('Hello ' + name); 
} 

greeting('ktm'); 

因此,有两种方法来定义功能。

(1)功能表达

var greeting = function(name) { ... }

(2)函数声明

function greeting(name) { ... }

有一种简单的方法来调用函数。

greeting('hello');

实际上,你可以通过它的任何数量的参数,但如果函数需要的参数,你通过它没有,它会将其视为undefined

+0

谢谢。我不是故意浪费任何人的时间。我是新来的JavaScript。 – Pretzel 2013-03-11 03:39:35

+0

非常感谢:) – Pretzel 2013-03-11 03:40:37

+0

你不浪费任何人的时间,认真:-)我很高兴写下这个回应。如果您错误地将(初次)演示文稿误认为居高临下,我很抱歉。 – ktm5124 2013-03-11 03:42:06

1

你根本没有调用你的函数。

给你的函数的调用是这样的:

greeting("Mike"); 
0

尝试:

//Simple greeting function 
var greeting = function (name) { 
    console.log("Great to see you," + " " + name); 
}; 

greeting('foo bar'); 
+1

不可以。不可以。做...或不要。没有尝试。 – 2013-03-11 03:30:48

+0

@SamuelLiew ??? – Petah 2013-03-11 04:08:11

0

这里是如何定义功能:

function greeting(name) { 

    console.log("Great to see you," + " " + name); 

} 

,并调用它:

greeting("Tomas"); 
0

,或者你可以做...

/*here i am declaring my function*/ 
function greeting(name) { 
console.log(name); 
} 

/*here i am calling it*/ 
greeting('ktm'); 

功能的问候(){}是一个函数声明。函数声明可能更易于在潜入之前拾取和学习,并将函数存储到变量中。特别是如果你第一次学习这些东西。

+0

我认为这不像看起来那么令人困惑。这种区别就是这样一个流行词,它会让你感到困惑,因为你*在你真正了解它*之前听到它*。最有效的补救措施是一个简洁的解释:http://stackoverflow.com/questions/1013385/what-is-the-difference-between-a-function-expression-vs-declaration-in-javascrip – ktm5124 2013-03-11 03:49:18

+0

我完全同意。但首先学习函数声明的好处在于,它可以在JavaScript页面的任何位置设置,这与其他方法不同,这就是为什么我建议将其作为第一个学习步骤,以防万一您最终将引用代码放在其上方或下方。 – blackhawk 2013-03-11 03:58:41