JavaScript基础笔记
劉。
这个作者很懒,什么都没留下…
展开
-
伪数组转成真数组的5种方法
伪数组转成真数组的5种方法1.for循环第一种就是使用最基础的for循环,这个应该有一点基础的都看得懂。 const divs = document.querySelectorAll('div'); let arr = []; console.log(divs instanceof Array); for (let i = 0; i < divs.length;i++) { arr.push(divs[i]); } console.log(arr inst原创 2021-06-29 16:09:17 · 6421 阅读 · 1 评论 -
JavaScript函数声明与函数表达的区别
JavaScript函数声明与函数表达的区别在JavaScript中有两种声明函数的方式:函数声明式、函数表达式。函数声明式function 函数名(){函数体};函数声明式会变量提升,意味着函数声明的函数会出现在程序顶部,即在函数声明的前后都可以调用函数。console.log(print() ? "调用成功" : "调用失败"); //调用成功function print() { return true;}console.log(print() ? "调用成功" : "调用失败"原创 2021-02-07 16:46:46 · 130 阅读 · 0 评论 -
JavaScript立即执行函数
立即执行函数 立即执行函数的主要作用就是创建一个立即执行的拥有独立作用域函数,这样可以避免变量污染。立即执行函数写法(function (num) { console.log(num);}(1));//1 (function(形参){函数体;}(传值));(function (num) { console.log(num);})(2);//2 (function(形参){函数体;})(传值);! function (num) { console.log(num);原创 2021-02-07 16:02:08 · 172 阅读 · 0 评论 -
JavaScript词法作用域
词法作用域 在编程语言中,作用域存在两种工作模式,一种是动态作用域,一种是词法作用域(静态作用域)。在JavaScript使用的就是词法作用域。什么是词法作用域 词法作用域,顾名思义,就是定义在词法阶段的作用域。用通俗一点的话讲,就是函数的作用域在函数定义的时候就已经决定了。函数作用域原理(个人理解,有错误欢迎各位大佬斧正) 每一个JavaScript函数都是Function对象的一个实例,在Function对象中有一个仅供JavaScript引擎存取的内部属性[[ scope]],翻原创 2021-02-07 14:54:07 · 178 阅读 · 0 评论 -
JavaScript闭包
闭包JavaScript闭包的本质:基于词法作用域和将函数按值传递。解释: 函数在创建时会记住并访问所在的词法作用域,并且保持对词法作用域的引用,就会形成闭包。 由于外部函数无法直接访问内部函数,所以将内部函数return,以间接方式访问此词法作用域中的变量。var num = 100; //全局作用域function sum() { var num = 0; //函数全局作用域 function print() { num += 2; //函数内部作原创 2021-02-06 23:01:05 · 76 阅读 · 0 评论 -
JavaScript函数赋值变量
函数赋值变量以函数形式返回function print(val) { console.log(`姓名是:${val}`);}var fn = print;//将函数赋值给fnfn('angus');//姓名是:angus以返回值形式将函数返回的值赋值给fn,如果函数没有返回值,但又接受了,此时会返回undefined。有返回值:function print(val) { return `姓名是:${val}`;}var fn = print('angus');con原创 2021-02-06 13:50:32 · 3757 阅读 · 0 评论