js 深度学习(四)

  1. 函数
bash 复制代码
var test = function test1(){
    var a =1,b=2
    console.log(a,b)
    test1()//递归
}
console.log(test.name) //test1
test1() //报错

匿名函数表达式 函数自变量

bash 复制代码
var test = function(){->匿名函数
    var a =1,b=2
    console.log(a,b)
    test1()//递归
}
bash 复制代码
var test = function(a,b){
    var a =1,b=2
    console.log(argyments) //形参
}

function test(a,b)

给未定义的形参赋值还是undefined,给定义的形参赋值可以修改

2、预编译

1.通篇检查语法错误

1.5.预编译的过程

2.解释一行 执行一行

函数声明整体提升,变量只有声明提升,赋值是不提升的

暗示全局变量

bash 复制代码
var a=1;
b=2;
function test(){
 var a = b = 1; //函数内部 没有声明 直接赋值存在window
}

函数内部预编译过程

1、寻找形参和变量声明

2、将实参赋值形参

3、寻找函数体声明 赋值函数体

4、执行

相关推荐
小羊没烦恼!4 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
三十而立洋4 天前
Cookie 详解:从产生到安全,一次讲透
前端·javascript
伞伞悦读4 天前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
卡布鲁4 天前
把一个 Vite + Vue3 应用塞进 qiankun (React + Umi3) 主站:十个坑的复盘
前端·javascript·react.js
C语言小火车4 天前
C/C++ 为什么需要编译器?
开发语言·c++
李少兄4 天前
JavaScript 隐式全局变量解析
javascript
霍霍的袁4 天前
【C++】map 和 set 的使用 | 从用法到底层
开发语言·c++·学习·visual studio
孙启超4 天前
【AI开发之Rust】第 11 课:智能指针与内部可变性
开发语言·后端·rust
此生决int4 天前
深入理解C++系列(20)——C++11(下)
开发语言·c++
沙蒿同学4 天前
我用 Go 搭了一条 AI Agent 流水线:从 1 张商品图到一整套淘宝详情页
前端·javascript·后端