function 语句
A function definition creates a new function object and stores that object in a newly created property named funcname.(翻译:函数定义创建了一个新的function对象,并且把这个对象储存在一个新创建的名为funcname 的属性中)
Function definitions usually appear in top-level JavaScript code. They may also be nested within other function definitions, but only at the "top level" of those functionsthat is, function definitions may not appear within if statements, while loops, or any other statements.
Technically speaking, the function statement is not a statement. Statements cause dynamic behavior in a JavaScript program, while function definitions describe the static structure of a program. Statements are executed at runtime, but functions are defined when JavaScript code is parsed, or compiled, before it is actually run. When the JavaScript parser encounters a function definition, it parses and stores (without executing) the statements that comprise the body of the function. Then it defines a property (in the call object if the function definition is nested in another function; otherwise, in the global object) with the same name as the function to hold the function.
(翻译:科学的说,函数语句并非一个语句,在javascript程序中,语句会引发动态的行为,但函数定义却描述的静态的程序结构。语句在运行时执行,而函数被定义却在javascript code 被解析或编译时,实际执行之前 被定义的,当javascript 解析器遇到函数定义时就会解析和储存(并不执行)由函数体组成的语句,然后会定义一个和函数名称相同的属性来保存他。)
The fact that function definitions occur at parse time rather than at runtime causes some surprising effects. Consider the following code:
alert(f(4)); // Displays 16. f( ) can be called before it is defined.
var f = 0; // This statement overwrites the property f.
function f(x) { // This "statement" defines the function f before either
return x*x; // of the lines above are executed.
}
alert(f); // Displays 0. f( ) has been overwritten by the variable f.
These unusual results occur because function definition occurs at a different time than variable definition. Fortunately, these situations do not arise very often.
return 语句
语法:
return expression;
或
return;
return 只能出现在函数体内。
如果一个函数执行了不带expression的return语句,或因执行到了函数主体的尾部而返回,那么这个函数调用的表达式的值 就是undefined
分享到:
相关推荐
在IT领域,JavaScript(简称JS)作为一门广泛应用于网页开发的脚本语言,其灵活性和实用性使其成为前端开发不可或缺的一部分。下面将详细解析从给定文件中提取的关键知识点,涵盖JS的基本语法、DOM操作、数据类型...
2. JavaScript 注释://,用于注释代码,防止代码执行。 3. HTML 文档顺序:document -> html -> (head, body),HTML 文档的基本结构。 4. 浏览器窗口中的 DOM 顺序:window -> (navigator, screen, history, ...
107个常用javascript语句 -7.焦点 .focus(); -6.捕获对象通用方法 function $(obj) {return document.getElementById(obj);} ("") %> -5.字符串赋值数组var array=new Array(); array=tdrczpdata.split('<BR>'); ...
其中,expression 是一个表达式,value1、value2 是两个常量,statement1、statement2 和 statement3 是三个语句。 switch 语句的执行过程如下: 1. 计算 expression 的值。 2. 根据 expression 的值,选择对应的 ...
这份“js.base.3.statement共30页.pdf.zip”压缩文件包含了关于JavaScript语句的详细讲解,旨在帮助初学者或有经验的开发者深入理解这一核心概念。标签“js.base.3.statem”暗示了内容可能涵盖了变量声明、条件判断...
for in 语句的基本语法为:for (variable in object) statement,其中 variable 是声明的一个变量,object 是要遍历的对象,statement 是在遍历时要执行的语句。 在使用 for in 语句时需要注意以下几点: 1. 对象...
标题和描述中的“JS in JS”以及标签都指向了一个深入探讨JavaScript语言内部机制的主题,具体而言,这涉及到了Mozilla的Narcissus项目——一个用JavaScript编写的JavaScript解释器。Narcissus由Mozilla开发,旨在...
标签可以与变量重名,它是一个独立的语法元素(既不是变量,也不是类型),其作用是标识”标签化语句(labeled statement)”标签声明标签(label)可以声明在任何一个语句前面,或者语句块前,以使得语句或语句块被...
如果添加 `else`,当条件不满足时会执行另一个语句块,如 `else {语句2}`。可以使用 `else if` 添加多个条件检查,形成多条件选择。此外,if 语句可以嵌套,创建更复杂的逻辑结构。 3. **switch 语句**: switch ...
为了找出Java代码中的SQL语句,开发者可能需要进行源代码审查,寻找特定的关键词或模式,如`PreparedStatement`、`Statement`、`ResultSet`等类的使用,以及SQL查询字符串。这些字符串可能直接出现在代码中,或者...
"js.base.3.statement.pptx"讨论的是语句,如控制流语句(条件语句、循环语句)、声明语句(变量声明、函数声明)以及表达式语句。掌握这些语句能帮助我们更好地组织和控制程序的执行流程。 "js.base.4.object.pptx...
Label语句的格式为`Label: statement`,其中`Label`是你自定义的一个标识符,`statement`是紧接着的代码行或代码块。 在JavaScript中,`break`和`continue`语句用于控制循环的流程。`break`语句用于立即退出最内层...
它的语法结构非常简单,基本形式是:如果某个条件(condition)为真(true),则执行花括号内的语句(statement)。这里的条件通常是使用比较运算符、逻辑运算符等进行表达式计算的结果。如果条件为假(false),则...
### JavaScript中常用的一百零七条语句 #### 1. 输出语句:`document.write("")` `document.write("")` 是一种将文本直接输出到HTML文档流中的方法。这里的空字符串表示可以替换为任何需要输出的内容。这种方法常...
利用我自己的JS语法分析工具JSinJS(https://github.com/kissjs/JSinJS ),我求出了所有能够出现在语句第一个的JS语法标记 (就是Statement的first集合),他们是: ["debugger", "try", "throw", "switch", ...
JavaScript 提供了多种控制语句,其中包括“for...in”语句,这是一种为对象属性或者数组元素提供便捷遍历方式的结构。 首先,我们需要理解在JavaScript中的对象以及数组的概念。对象是键值对的集合,而数组则是...
在这个主题中,“js与jsp操作sql数据库”指的是使用JavaScript构建动态SQL语句,然后通过JSP在服务器端执行这些SQL语句,以与SQL Server数据库进行交互。下面我们将详细探讨这一过程。 首先,JavaScript是一种运行...
8. **流程控制语句** (JavaScript-process-statement.gif) - JavaScript的流程控制包括条件语句(`if...else`,`switch`)、循环语句(`for`,`while`,`do...while`)和跳转语句(`break`,`continue`)。这些语句...