《JavaScript 核心原理解析》学习笔记 Day 7 可执行结构 模板 函数参数

文章详细阐述了JavaScript中的模板和函数参数的特性,如缺省参数的执行行为以及模板字面量在函数调用中的作用。通过示例展示了函数参数如何在每次调用时执行,以及模板字面量如何传递参数给函数,包括无参数调用和带有表达式的模板字符串的情况。

        JavaScript 中的模板,是除语句和表达式以外的另一种可执行结构

        函数参数也是一种可执行结构,包括缺省参数、剩余参数和参数展开。以下代码以缺省参数为例:

// 每次调用函数 foo 时,都会执行一遍 x++ 表达式,并将其结果值作为函数参数传入
var x = 0;
function foo(i=x++) {
  console.log(i)
}
foo() // 0
foo() // 1
x // 2

        另外,模板字面量可用于触发函数执行(一般不这么做),并且会作为函数参数传入。具体见如下代码:

// 声明一个打印其参数的函数 foo
function foo(...args){
    console.log(...args)
}

// 不带参数调用时,无任何打印信息
foo()

// 用模板字面量触发函数执行,打印参数表如下
// 只有一个数组型参数,成员是字符串
foo``
// ['', raw: Array(1)]
// 数组内的成员即为模板字面量中的字符串值
foo`xxx yyy`
// ['xxx yyy', raw: Array(1)]

// 第一个参数为数组
// 第二个及之后的参数为模板字面量中表达式的值
foo`${123}` 
// ['', '', raw: Array(2)] 123
// 数组内的各成员分别为模板字面量中表达式前后的字符串值
foo`xxx${123}yyy`
// ['xxx', 'yyy', raw: Array(2)] 123
foo`xxx${123}yyy${456}zzz`
// ['xxx', 'yyy', 'zzz', raw: Array(3)] 123 456

----- 极客时间《JavaScript 核心原理解析》学习笔记 Day 7 ----- 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值