博主信息
博文 22
粉丝 0
评论 0
访问量 19592
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
作用域和闭包; 类与类的继承
杰西卡妈妈
原创
761人浏览过

1. 作用域

1). 全局作用域,默认的,不可删除,如果在是浏览器中运行js,那么全局对象就是window
let site = “google”;
console.log(site);
console.log(window.site);

2). 函数作用域, 仅限在当前作用域内访问, 外部不可见,否则会报错。

  • 作用域链, 自身查找,如果没有就返回上一级
    function getSite() {
    let domain = google.com
    return `${site} [${domain}];
    console.log(getSite());

3). 块作用域,包在大括号里的语句就是块
{var a = 1;
var B = 2;}
console.log(a, B);

2. 闭包

  • 所有函数都是闭包
  • 能够访问自由变量的函数
  • 在函数A内部有个函数B,函数B可以访问函数A中的变量,函数B就是闭包
  • 通过闭包来访问内部的私有变量
    function sum(a, b) {
    return a + b + c;
    }
    console.log(sum(4, 5));

function Hello() {
let email = “abc@abc.com”;
return function d(){
return email;
},
};
console.log(Hello());

2. 类与类的继承

  • 类和构造器constructor
    constructor是类的构造函数 用与传递参数 返回实例对象,通过new生成实例时自动调用该方法.

    <script>
    function User(name, email) {
    this.name = name;
    this.email = email;
    this.show = function () {
    return { name: this.name, email: this.email };
    };
    }
    const user = new User(“Peter”, “abc@abc.com”);
    console.log(user);
    </script>

  • 类是一个模板
  • 原型共享方法,通过对象来调用

    <script>
    class User1 {
    constructor(name, email) {
    this.name = name;
    this.email = email;
    }
    show() {
    return { name: this.name, email: this.email };
    }
    }
    const user1 = new User1(“Bill”, “ab@ab.com”);
    console.log(user1);
    console.log(user1.show());
    </script>

  • 继承,是对父类进行一些扩展,添加一些新的属性或方法
    class Child extends User1 constructor(name, email, gender) {
    super(name, email);

    1. this.gender = gender;
    2. }
    3. show() {
    4. return { name: this.name, email: this.email, gender: this.gender };
    5. }
    6. }
    7. const child = new Child("Bob", "oy@qq.com", "male");
    8. console.log(child.show());
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学