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

相关推荐
Vae_Mars13 小时前
C#中的delegate委托
开发语言·c#
一直走下去-明13 小时前
简单的http抓包解包完整代码
开发语言·python
caimouse14 小时前
ReactOS 图形系统分析(51):元文件子系统 — metafile.c
c语言·开发语言
学习星球15 小时前
Solid.js 实战:拆解官方 RealWorld 项目
开发语言·javascript·vue.js
OPEN-F15 小时前
Python进阶教程:正则表达式进阶与文本处理
开发语言·python·正则表达式
zhifou12345615 小时前
java 17升级安装
java·开发语言
for_ever_love__15 小时前
python基础语法学习: 面向对象的三大特性
开发语言·python·学习
不会代码的小猴16 小时前
7. JSON
开发语言·c++·笔记·qt·算法·json
沫璃染墨16 小时前
《Qt从零入门系列(六):信号与槽进阶——从多种连接方式到Lambda表达式》
开发语言·c++·qt·代码规范·设计规范·qt5
YuJie16 小时前
JSBridge 基础知识
前端·javascript