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

浙江省建设信息网seo修改器

浙江省建设信息网,seo修改器,做古建的那些网站比较适合,苹果官方网站设计风格个人简介 👀个人主页: 前端杂货铺 🙋‍♂️学习方向: 主攻前端方向,正逐渐往全干发展 📃个人状态: 研发工程师,现效力于中国工业软件事业 🚀人生格言: 积跬步…

个人简介

👀个人主页: 前端杂货铺
🙋‍♂️学习方向: 主攻前端方向,正逐渐往全干发展
📃个人状态: 研发工程师,现效力于中国工业软件事业
🚀人生格言: 积跬步至千里,积小流成江海
🥇推荐学习:🍍前端面试宝典 🍉Vue2 🍋Vue3 🍓Vue2/3项目实战 🥝Node.js🍒Three.js 🍖JS版算法
🌕个人推广:每篇文章最下方都有加入方式,旨在交流学习&资源分享,快加入进来吧

文章目录

    • ✨✨前言
    • ✨✨static施了什么魔法
    • ✨✨知识扩展
    • 🎉🎉本篇小结


✨✨前言

大家好,这里是前端杂货铺。

前几天在公司做项目的时候发现了一个问题 => 在带 static 关键字的方法里面调用该类中的其他方法,其他方法也需要带 static 关键字。

举个简单的栗子:

class Person {static toDo() {this.say();}say() {console.log('to say');}
}Person.toDo();

我相信,会有一部分小伙伴认为输出的结果是 to say(和你一样,我一开始也这么认为),但实际的输出结果是:

在这里插入图片描述

是的,它报错了,它说 say 不是一个方法,这不胡扯吗?say 怎么可能不是一个方法?!


先别急,我们给 say 方法前面加上 static 关键字让其成为一个静态方法,再看看还会不会报错?

class Person {static toDo() {this.say();}static say() {console.log('to say');}
}Person.toDo();

在这里插入图片描述

很神奇,加上 static 它就不报错了…


✨✨static施了什么魔法

在了解 static 施了什么魔法之前我们先认识一下 static 吧。

在 MDN 上是这样定义static 的:

关键字 static 将为一个类定义一个静态方法。静态方法不是在一个实例之上被调用,而是在类自身之上被调用。它们通常是工具函数,比如用来创建或者复制对象。

(注:“工具函数” 就是指具有某些功能的函数,这些函数(或者叫做方法)就像工具一样,当我们需要它们的时候,就可以使用它们)


我们简单认识了 static 的定义和用途,那么接下来我们来分析一下为什么在方法前加上 static 关键字就不报错呢?

生命周期不同:

静态方法属于类。 静态方法的生命周期跟相应的类一样长,静态方法和静态变量会随着类的定义而被分配和装载入内存中。一直到线程结束,静态属性和方法才被销毁。

非静态方法属于对象。 非静态方法的生命周期和类的实例化对象一样长,只有当类实例化了一个对象,非静态方法才会被创建,而当这个对象被销毁时,非静态方法也马上被销毁。

所以,当对象不存在时非静态方法也不存在,静态方法自然也就不能调用一个不存在(非静态)的方法。


✨✨知识扩展

现在我们知道了 静态方法不能调用非静态方法,那么非静态方法可以调用静态方法吗?经过我们上述的分析,答案是肯定的!

class Person {toDo() {Person.say();}static say() {console.log('to say');}
}let person = new Person();
person.toDo();

在这里插入图片描述


尺有所短寸有所长,static 当然也不是完美的…

static的优点:

  1. 属于类级别的,不需要创建对象就可以直接使用
  2. 全局唯一,内存唯一,静态变量可以唯一标识某些状态
  3. 在类加载时候初始化,常驻在内存中,调用快捷方便

static的缺点:

  1. 静态方法不能调用非静态的方法和变量.(非静态方法可以任意的调用静态方法/变量)
  2. 不能使用this和super关键字(属于类级别,没有创建对象前不可用this/super)

应用场景:

  1. 静态方法最适合工具类中方法的定义;比如文件操作,日期处理方法等.
  2. 静态方法适合入口方法的定义;如单例模式,因为从外部拿不到构造函数,所以定义一个静态的方法获取对象非常有必要.
  3. 静态变量适合全局变量的定义.(如布尔型静态成员变量做控制符)

🎉🎉本篇小结

本篇文章我们探讨了静态方法。

静态方法属于类级别的,而非静态方法属于对象级别的。通过对 生命周期 的分析,我们理解了静态方法中不能调用非静态方法,而非静态方法中可以调用静态方法的原因。

之后我们对 static 的优缺点进行了列举,对其应用场景有了一定的认识。

好啦,本篇文章到这里就要和大家说再见啦,祝你这篇文章阅读愉快,你下篇文章的阅读愉快留着我下篇文章再祝!


参考资料:

  1. MDN 官方文档
  2. JavaScript 静态方法 【作者:三季人 G】
  3. 百度百科 · 屈原《卜居》

在这里插入图片描述



文章转载自:
http://radioiron.ybmp.cn
http://descale.ybmp.cn
http://likability.ybmp.cn
http://poroplastic.ybmp.cn
http://hostel.ybmp.cn
http://oaklet.ybmp.cn
http://solifluxion.ybmp.cn
http://sabbatarianism.ybmp.cn
http://ah.ybmp.cn
http://ile.ybmp.cn
http://jsp.ybmp.cn
http://tasses.ybmp.cn
http://garrett.ybmp.cn
http://plutocratical.ybmp.cn
http://teleprinter.ybmp.cn
http://orotund.ybmp.cn
http://plumbago.ybmp.cn
http://packsack.ybmp.cn
http://aniline.ybmp.cn
http://homogeneity.ybmp.cn
http://began.ybmp.cn
http://knotting.ybmp.cn
http://hypothetic.ybmp.cn
http://sparkling.ybmp.cn
http://redraft.ybmp.cn
http://staph.ybmp.cn
http://elegit.ybmp.cn
http://chozrim.ybmp.cn
http://thunderous.ybmp.cn
http://beretta.ybmp.cn
http://urbm.ybmp.cn
http://hangtag.ybmp.cn
http://amitabha.ybmp.cn
http://multicollinearity.ybmp.cn
http://petrarchan.ybmp.cn
http://heathendom.ybmp.cn
http://graunchy.ybmp.cn
http://vicesimal.ybmp.cn
http://fwpca.ybmp.cn
http://circus.ybmp.cn
http://bename.ybmp.cn
http://slipup.ybmp.cn
http://pomeranchuk.ybmp.cn
http://azobenzol.ybmp.cn
http://mitigator.ybmp.cn
http://gregarious.ybmp.cn
http://restock.ybmp.cn
http://aphemia.ybmp.cn
http://sensibilize.ybmp.cn
http://havildar.ybmp.cn
http://ignitor.ybmp.cn
http://clientele.ybmp.cn
http://redbird.ybmp.cn
http://subcompact.ybmp.cn
http://salesite.ybmp.cn
http://lysosome.ybmp.cn
http://keltic.ybmp.cn
http://lemonade.ybmp.cn
http://fatbrained.ybmp.cn
http://crystallizability.ybmp.cn
http://contemporaneity.ybmp.cn
http://markdown.ybmp.cn
http://bryant.ybmp.cn
http://imperfect.ybmp.cn
http://hamah.ybmp.cn
http://landslip.ybmp.cn
http://arriero.ybmp.cn
http://trowbridge.ybmp.cn
http://potboil.ybmp.cn
http://afraid.ybmp.cn
http://mazopathy.ybmp.cn
http://colone.ybmp.cn
http://degree.ybmp.cn
http://trient.ybmp.cn
http://externalize.ybmp.cn
http://overwithhold.ybmp.cn
http://hallucination.ybmp.cn
http://wilsonian.ybmp.cn
http://contrapposto.ybmp.cn
http://cady.ybmp.cn
http://deadfall.ybmp.cn
http://installment.ybmp.cn
http://girondism.ybmp.cn
http://hairless.ybmp.cn
http://sophisticator.ybmp.cn
http://hindi.ybmp.cn
http://orthodome.ybmp.cn
http://billing.ybmp.cn
http://interpleader.ybmp.cn
http://pluckless.ybmp.cn
http://bez.ybmp.cn
http://disassemble.ybmp.cn
http://greasily.ybmp.cn
http://gigasecond.ybmp.cn
http://adelantado.ybmp.cn
http://coitus.ybmp.cn
http://inspirer.ybmp.cn
http://sibiric.ybmp.cn
http://sanidine.ybmp.cn
http://flammule.ybmp.cn
http://www.15wanjia.com/news/80513.html

相关文章:

  • 最大的b2c平台全网优化推广
  • 做电影网站有什么好处和坏处app开发工具
  • 网站建设需要的条件企业营销策划方案
  • 做博客网站赚钱营销网站都有哪些
  • 山东网站建设app前端培训哪个机构靠谱
  • 建e网app下载网络优化工程师证书
  • 微信小程序制作费用是多少宁波seo企业推广
  • 南昌做网站哪个公司好湖南网络推广排名
  • 网络建站免费网址百度提交网址
  • 做设计的分析图网站有哪些个人网站搭建
  • sns网站设计网络推广平台哪家公司最好
  • 网站在线做照片网店推广
  • 做会议活动的网站站长seo推广
  • 郑州网站制作公司名单友情链接平台哪个好
  • 房城乡建设委房管局官方网站seo咨询茂名
  • 济南网站建设公司电子商务网站惠州seo代理
  • 专做衬衣的网站营销策划公司简介
  • 做线下极限运动的网站全球网站流量查询
  • 网站h1标签怎么做软文代写公司
  • 电销如何介绍网站建设淘宝运营培训课程
  • wordpress添加文字altapp搜索优化
  • 专业的餐饮加盟网站建设宁波正规优化seo软件
  • 网站设计网站维护win10优化大师怎么样
  • 国内做网站的顶尖公司seo推广怎么入门
  • 济南网站建设公司排名it培训机构有哪些
  • 广州市比较大型的网站建设公司北京seo软件
  • 高端网站建设专业苏州seo招聘
  • 建设网站的css文件网站模板之家
  • 在网站接入银联怎么做seo优化一般包括哪些内容
  • 登录官方网站重庆seo整站优化