| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> JavaScript知识库 -> JS高级--函数进阶 -> 正文阅读 |
|
[JavaScript知识库]JS高级--函数进阶 |
函数定义方式
?函数的调用(6种)? ? ? ?this指向问题this 指向详细解析(箭头函数) - Chris-dc - 博客园 1.普通函数:window 2.对象方法:实例对象obj1 3.构造函数:实例对象。原型对象里面的this指向的也是 ldh这个实例对象 4.绑定事件函数:事件的调用者button1 5.定时器:window 6.立即执行函数:window 改变函数内部this指向:call(),apply(),bind(), ? ? ?如果有的函数我们不需要立即调用,但是又想改变这个函数内部的this指向此时用bind ? ?严格模式?为整个脚本开启或为函数开启:“use strict”; ?严格模型的语法规范: 1.变量使用前必须声明 2.我们不能随意删除已经声明好的变量 3.严格模型下的全局作用域中函数中的this是undefined 4.构造函数不加new调用,this指向undefined,给undefined赋值会报错(。以前指向window,相当于给window添加属性了) ?5.定时器this还是指向window 。事件、对象还是指向调用者。 6.参数不能重名? 7.函数必须声明在顶层.新版本的JavaScript 会引入“块级作用域”(ES6 中已引入)。为了与新版本接轨,不允许在非函数的代码块内声明函数。 ?高阶函数定义:高阶函数是对其他函数进行操作的函数,它接收函数作为参数(回调函数)或将函数作为返回值输出。 闭包闭包( closure )指有权访问另一个函数作用域中变量的函数。简单理解就是,一个作用域可以访问另外一个函数内部的局部变量。 闭包的作用:延伸变量的作用范围 ?闭包练习: 已知:绑定事件、定时器都是异步操作,不会立即执行。 (function(i){...})(i) 立即执行函数会立即执行,参数传给尾部的小括号,function里面的小括号会再次接收这个参数。立即执行函数也称作小闭包,里面的所有函数都可以访问它内部变量。 (1)点击输出当前索引号(面试常见) ?(2)延迟三秒输出<li>中内容? ?(3) ? ?闭包的思考: ? 递归:函数里面调用自己,需要有结束条件深拷贝与浅拷贝:1.浅拷贝:只拷贝最上面一层,深层的对象只拷贝了地址,所以原深层数据改变会引起拷贝过来的深层数据改变
2.深拷贝:把所有深层数据值全部拷贝到新对象里面。新旧两个对象的数据修改互不影响。 |
|
JavaScript知识库 最新文章 |
ES6的相关知识点 |
react 函数式组件 & react其他一些总结 |
Vue基础超详细 |
前端JS也可以连点成线(Vue中运用 AntVG6) |
Vue事件处理的基本使用 |
Vue后台项目的记录 (一) |
前后端分离vue跨域,devServer配置proxy代理 |
TypeScript |
初识vuex |
vue项目安装包指令收集 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 7:00:42- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |