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

相关推荐
1024肥宅14 分钟前
防抖(Debounce)
前端·javascript·ecmascript 6
1024肥宅16 分钟前
节流(Throttle)
前端·javascript·ecmascript 6
大怪v19 分钟前
【Virtual World 02】两点一线!!!
javascript·css·html
by__csdn20 分钟前
Vue2纯前端图形验证码实现详解+源码
前端·javascript·typescript·vue·状态模式·css3·canva可画
风生u26 分钟前
go进阶语法
开发语言·后端·golang
666HZ66628 分钟前
C语言——黑店
c语言·开发语言
Gomiko34 分钟前
JavaScript基础(八):函数
开发语言·javascript·ecmascript
我是阿亮啊41 分钟前
搭建Vue环境遇到的问题
javascript·vue.js·npm·node.js
〝七夜56941 分钟前
JVM内存结构
java·开发语言·jvm
初级炼丹师(爱说实话版)42 分钟前
JAVA泛型作用域与静态方法泛型使用笔记
java·开发语言·笔记