当前位置: 首页 > ds >正文

JavaScript保姆级教程 ——— 重难点详细解析(万字长文,建议收藏)

JavaScript保姆级教程 ——— 重难点详细解析(建议收藏)

    • 1. JS函数
    • 2. JS事件
    • 3. JavaScript 对象
    • 4. JavaScript prototype(原型对象)
    • 5. call和apply及bind三者的区别(面试重点)
    • 6. Javascript的事件流模型(面试重点)
    • 7. 防抖与节流(面试精选)
    • 8. JS中的虚拟DOM是什么?(面试重点)
    • 9. 手写一个new,实现同等功能
    • 10. 获得页面url参数的值(常用)
  • 本文是整理了JS中的一些重点,难点,以及不好理解的知识点

  • 本文非常详细,深入的讲解,包学包会
    在这里插入图片描述

1. JS函数

1.1 函数(Function)是什么?

  • 函数(方法)是由事件驱动的或者当它被调用时执行的可重复使用的代码块 —— 官方说明
  • 向来觉得官方的文档是有些生硬的,举个例子:

函数可以看做是功能(以一辆汽车为例,如下图),这些都可以看做成是方法

  • 刹车
  • 油门
  • 鸣笛
  • 档位

在这里插入图片描述

  • 这些功能任何一个里面都有很多个零件的配合,共同完成某一个任务,我们只需要去调用(踩刹车,踩油门,按喇叭,挂挡),功能就会执行
  • 函数也是一样的,它内部封装了一些操作,只有我们去调用的时候才会执行

1.2 一个最简单的函数及触发方法

<!DOCTYPE html>
<html><head><meta charset="utf-8"><title>我的第一个方法</title></head><body><button onclick="myFunction()">点击触发函数</button><script>// 必须有 function关键字,命名通常为驼峰命名,首字母小写function myFunction(){alert("这是我的函数");}</script></body>
</html>

1.3 带参数的函数(形参与实参)

  • 形参 : 函数中定义的变量(此时是没有值的,只是一个代称)

  • 实参 : 在运行时的函数调用时传入的参数(实际的值)

  • js中,方法中即使定义了形参,调用时不传实参也不会报错

    形参与实参 计算5+2的值

1.4 带有返回值的函数 ———— return

function fn(a, b){return a*b;
}
// 调用并给num赋值
let num = fn(3, 5);
console.log(num) // 得到15

1.5 js函数内置对象 ———— arguments(重点,考点)

  • 它是函数一创建就有的

  • 是一个类数组(并不是真正的数组)

  • 方法调用时,可以得到所有传进来的参数

  • 你传多少,我就能拿到多少

    function fn(){
    console.log(arguments)
    }
    fn(1, 2, 3, 4);

在这里插入图片描述
经典应用 ———— 求一组参数的总和

 function fn(){let sum = 0;for(let i = 0; i < arguments.length; i&
http://www.xdnf.cn/news/11537.html

相关文章:

  • 栏栅解密
  • linux ubuntu 24.04安装优麒麟ukylin版搜狗输入法
  • PostMessage和SendMessage的区别
  • 2023 Android面试官 常问的问题以及答案(附最新的Android面试大厂必考174题 )
  • ZYNQ FPGA实验——ADDA测试
  • 电脑出现错误代码:-118是什么情况,解决错误代码:-118的方法
  • 横盘是什么意思?
  • 嘉靖王朝最大的一出闹剧和惨剧——大礼仪之争
  • 使用C#和.NET Core的ETL作业
  • 【Qt系列教程】一、认识Qt、安装Qt、运行Hello Qt
  • Linux系统命令大全(超级详细版)
  • TestLink的使用实例
  • Ubuntu、kubuntu、xUbuntu、lubuntu等版本区别及界面样式
  • 2024年最新TCPView下载安装使用教程(图文教程)超详细(1),网络安全开发实用必备的几款插件
  • 特异度(specificity)与灵敏度(sensitivity)
  • 字符编码全解析:ASCII、GBK、Unicode、UTF-8与ANSI
  • python3中配置文件ini的使用详解----读写、list/dict/path等变量的应用、解码
  • VS 番茄插件 Visual Assist X_10.9.2440
  • mysql : grant权限命令汇总
  • JSF入门之helloworld
  • 20220801 git push -f命令
  • c语言---函数递归(详解)
  • Android 平台 metaRTC使用源码调试
  • MOS管工作原理精讲
  • 软件测试人员必备的60个测试工具,果断收藏了!_测试工程师必备软件_
  • linux 无法挂载目录mnt,详解linux下mnt目录作用
  • QSS语法介绍
  • JavaScript基础一、简介
  • 波动方程
  • 专家系统是什么