Blogger Information
Blog 29
fans 0
comment 0
visits 19802
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
js基础知识
手机用户1576673622
Original
563 people have browsed it

内容:1. 实例演示变量与常量的区别;2. 函数与匿名函数的区别 3. 箭头函数的参数特征 4. 闭包原理与实现并演示它5. 四种高阶函数,全部实例演示,并理解回调和纯函数是什么,写出你的答案

1.实例演示变量与常量的区别

  • 变量:会变的量,可以多次更新(改变)。第一次赋值被称作初始化。
    使用,let
    1. <script>
    2. // 声明
    3. let useName;
    4. // 声明并初始化(第一次赋值)
    5. let itmName = '手机';
    6. console.log(useName);
    7. // 更新
    8. itmName = '电脑';
    9. console.log(itmName);
    10. </script>
  • 常量:一个不变的变量。不能更新,所以声明时必须初始化。
    使用,const
    1. const UNITPRICE = 3355;
  • 小知识点。 标识符:不要用中文。 命名方案:推荐使用驼峰式,常量则全部用大写

2.函数与匿名函数的区别

1.调用在前的时候,匿名函数无法被调用,函数可以。
2.函数可以被改变,匿名函数不可以

  1. <script>
  2. // 可以改变
  3. function getName(name) {
  4. return "名字"+name
  5. }
  6. console.log(getName("张三"));
  7. function getName(name) {
  8. return "姓名"+name
  9. }
  10. console.log(getName("张三"));
  11. // 匿名函数
  12. const sum = function (a) {
  13. return "无法改变"
  14. }
  15. </script>

3.箭头函数的参数特征

箭头函数是用来简化‘匿名函数’的声明。

  1. // 简化前
  2. let sum = function(a,b) {
  3. return a + b;
  4. };
  5. // 简化后
  6. sum = (a,b) => {
  7. return a+b
  8. };
  9. console.log(sum(1,2));

如果函数体只有一条语句,可不写return

  1. sum = (a,b) => a+b;
  2. console.log(sum(2,4));

如果只有一个参数,连小括号都可以不用了
let tips = str => console.log(str);
如果没有参数,小括号不能省略
tips = () => console.log("Success");
1.箭头函数没有原型属性prototype,不能当构造函数用
2.箭头函数中的this,始终与它的上下文绑定

4.闭包原理与实现并演示它

闭包: 能够访问自由变量的函数,所以理论上讲,任何函数都是闭包
自由变量: 即不是函数参数变量也不是私有变量,存在于函数调用上下文中

  1. function a() {
  2. let n = 100;
  3. // 这个返回的子函数就是闭包
  4. return function () {
  5. return n;
  6. };
  7. }

5.四种高阶函数,全部实例演示,并理解回调和纯函数是什么

  • 高阶函数: 使用函数为参数或者将函数做为返回值的函数

  • 1.回调函数
    1. document.addEventListener("click", function () {
    2. alert("Hello World~~");
    3. });
  • 2.偏函数: 简化了声明时的参数声明。其原理是先声明构成函数执行条件的的必要参数,再将函数作为返回值

    1. let sum = function (a, b) {
    2. return function (c, d) {
    3. return a + b + c + d;
    4. };
    5. };
    6. let f1 = sum(1, 2);
    7. console.log(f1(3, 4));
  • 3.科里化。简化了调用参数

    1. sum = function (a) {
    2. return function (b) {
    3. return function (c) {
    4. return function (d) {
    5. return a + b + c + d;
    6. };
    7. };
    8. };
    9. };
    10. // 简化了调用参数
    11. let res = sum(10)(20)(30)(40);
    12. console.log(res);
  • 4.纯函数。完全独立于调用上下文,返回值只能受到传入的参数影响

    1. // 不是纯函数,受Date影响
    2. function getDate() {
    3. return Date.now();
    4. }
    5. console.log(getDate());
    6. // 是纯函数
    7. function add(a, b) {
    8. console.log(a + b);
    9. }
    10. add(1, 2);
  • 回调函数和纯函数
    回调函数是被作为一个实参传入到另外一个外部函数中,并且外部函数被调用。这个函数就被称为回调函数。
    纯函数就顾名思义,函数中没有其他函数为函数体的函数,他的返回值只受传入的参数影响
Correcting teacher:天蓬老师天蓬老师

Correction status:qualified

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post