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、执行

相关推荐
weixin_44347851几秒前
flutter组件学习之对话框与提示详解
javascript·学习·flutter
LilySesy17 分钟前
【与AI+】英语day1——ABAP基础与数据类型
开发语言·ai·sap·abap
你不是我我20 分钟前
【Java 开发日记】我们来说一下 b+ 树与 b 树的区别
java·开发语言
2501_9249526927 分钟前
C++中的过滤器模式
开发语言·c++·算法
左左右右左右摇晃27 分钟前
Java笔记——IO
java·开发语言·笔记
2401_8732046528 分钟前
C++中的组合模式实战
开发语言·c++·算法
twc82929 分钟前
Query 改写 大模型测试的数据倍增器
开发语言·人工智能·python·rag·大模型测试
Byron__31 分钟前
HashSet/LinkedHashSet/TreeSet 原理深度解析
java·开发语言
CQU_JIAKE33 分钟前
3.23[Q]s
开发语言·windows·python
2401_8318249634 分钟前
高性能压缩库实现
开发语言·c++·算法