为了转生而点技能-javascript,day3(陈述式及表达式、函式陈述式与函式表达式

陈述式(statement)

定义:单行程序码,只有用来命令执行的功能,无法回传值。

  1. 流程控制类:if、switch、break、continue、Block
  2. 宣告类:var、let、const
  3. 回圈:do while、while、for

表达式(expression)

定义:单行程序码,可以有值,可以利用chrom输入该行程序码,会出现结果。

详细可以参考MDN的Expressions and operators
例子:

  1. 一元运算式:delete、typeof等,只有一个运算元。
  2. 二元运算式:加减乘除跟%,2个运算元及一个运算子。
  3. 三元运算式:(condition ? (True) : (False)),3个运算元及2个运算子?跟:。


函式陈述式(Function statement)

样态:代表此类函数需要呼叫才会回传一个值,且在创造阶段就被存在记忆体里面,且通常需要被命名。

下面的function函式被宣告为Name,此类函式称函式陈述式,或称为具名函式,函式陈述式皆需命名才有作用,不然就是透过IIFE立即函式来执行。

function Name(){
       console.log('执行')
}
Name();       //执行

直接打函式陈述式的名字即可执行。


函式表达式(Function expression)

样态:把函式function当作一个物件(object type)并把值(此值为heap memory的address)赋给予变数(LHS行为),这个新函式就称为函式表达式,在执行阶段才会有这个建立。

下面的函式未予命名的称为匿名函式。

var she = function"无名"(){
        .......
}

此时变数she接收到的是function的address,且函式在这边为物件型式(object type)。


<<:  为了转生而点技能-javascript-基础观念练习题(hoisting、RHS、LHS、scope)。

>>:  MySQL Workbench 如何备份与还原资料库

第二十八日-MYSQL预存程序 STORED PROCEDURE:来写一个BMI小程序(1)

我们在处理资料时,很常遇到一个情况:每天要捞差不多的东西! 每天要下的指令其实大同小异,只是输入日期...

建立第一个RESTful api server(重构篇)-1 (Day16)

在之前的开发过程中,会发现整个main.go越来越长,在阅读理解上会相对没有那麽直觉且快速,因此接下...

Day 4 情报收集 - Information Gathering (DNS analysis)

什麽是DNS DNS全称Domain Name System,它将 ithelp.ithome.co...

Day 11 - React: Component

关於 Separation of concerns(SoC)这个地方我觉得别人写的已经很清楚了(英文...

Day15 - 模型评估 part2

前面提到过使用不同架构(FCDAE(3h),FCDAE(5h))的全连接神经网路除噪模型对两个语音特...