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

无锡做网站好百度网址怎么输入?

无锡做网站好,百度网址怎么输入?,高端大气企业网站模板,做网站有什么js特效目录 一:构造函数缺陷 二:原型 1 原型是是什么 2 原型对象的作用 3 原型对象this指向问题 4 利用原型对象添加方法 给JS内置构造函数Array添加最大值方法 给JS内置构造函数Array添加求和方法 三:Constructor属性 四:如何…

目录

一:构造函数缺陷

二:原型

1 原型是是什么

2 原型对象的作用

3 原型对象this指向问题

4 利用原型对象添加方法

给JS内置构造函数Array添加最大值方法

给JS内置构造函数Array添加求和方法

三:Constructor属性

四:如何赚钱

一:构造函数缺陷

通过使用JS来实现面向对象编程,可以通过构造函数实现封装。但一个很严重问题便是JS构造函数存在浪费内存的问题

例如:

function Fn(name, age, song) {this.name = namethis.age = agethis.song = function () {console.log('如果这都不算爱');}}const zxy = new Fn('张学友', 50)const gfc = new Fn('郭富城', 49)console.log(zxy, gfc);

以上代码中,通过构造函数的方式创建了zxy、以及gfc两个实例对象,但是执行构造函数中函数体中代码时,会声明两个功能完全相同的song()方法代码。这样便会造成内存的浪费,因为可以通过原型的方式实现所有对象使用同一个函数,可以达到节省内存目的。

二:原型

能够利用原型对象实现实例对象中方法共享

1 原型是是什么

原型是一个构造函数上的属性(prototype),同时该属性又是一个对象,我们称为原型对象

    function Star(name) {this.name = name}const zxy = new Star('张学友')console.log(Star.prototype);//Object

2 原型对象的作用

共享方法。因为原型对象可以挂在函数,可以把那些实例化对象身上通用的方法,直接定义在prototype对象上,这样所有对象的实例就可以共享这些方法。

同时,对象实例化过程中不会多次创建原型上函数,可以节约内存。

3 原型对象this指向问题

<script>let thatfunction Star(name) {this.name = name}const zxy = new Star('张学友')Star.prototype.sing = function () {that = this}zxy.sing()console.log(that === zxy);//true</script>

通过以上案例,原型对象中this指向实例化对象

4 利用原型对象添加方法

给JS内置构造函数Array添加最大值方法

<script>//给Array构造函数添加最大值Array.prototype.max = function () {return Math.max(...this)
//this指向实例化对象arr
//...this为展开运算符,用于将arr展开成1,2,3}const arr = [1, 2, 3]console.log(arr.max());//3</script>

给JS内置构造函数Array添加求和方法

Array.prototype.sum = function () {
//方法1      let sum = 0for (let index = 0; index < this.length; index++) {sum += arr[index]}return sum
//方法2return this.reduce((prev,item)=>prev+item,0)}console.log(arr.sum());//6

三:Constructor属性

每一个原型对象都有一个constructor属性,该constructor属性用于指该原型对象的构造函数

    function Star() {}Star.prototype = {sing: function () {console.log('sing');},song: function () {console.log('song');}}console.log(Star.prototype);

之前是通过在prototype原型对象身上追加属性方式,使构造函数获得方法;但是通过赋值方式,向原型对象中添加方法的话,原来的原型对象中的constructor属性就没有了。

Star.prototype = {constructor:'Star'sing: function () {console.log('sing');},song: function () {console.log('song');}}

因此要通过constructor属性使原型对象重新指向构造函数


四:如何赚钱

现在是否厌倦了程序员朝九晚五的生活、在校大学生是否愿意在校进行人生中的第一次创业、是否正在看此篇文章的你愿意通过五年努力让自己开上梦想的车子。

那就从提升底层认知开始,加入微木的知识星球:微木的创业思考

专属于创业者的交流集中地,创业、认知提升找微木!

1 创业底层方法论

2 从千万本书书籍中挑选出的,人生必读书目清单。

3 认知提升学习资源(秘密)

4 寻找赚钱项目底层方法论

5 好书精华提炼

6 深度链接微木

每天0.3元/天,欢迎加入专属于创业者的交流集中地

http://www.dinnco.com/news/48649.html

相关文章:

  • 怎么做网站前端百青藤广告联盟
  • 网站开发的流程是什么百度推广优化工具
  • 网站建设方案及报价单广州seo优化排名推广
  • 程序开发 网站开发注册城乡规划师含金量
  • 网站上社保做增员怎么做百度人工服务24小时电话
  • 泉州最专业手机网站建设哪家好新公司如何做推广
  • 电商公司做网站品牌推广软文
  • 海口网页建站模板微信推广软件哪个好
  • 怎么看网站使用什么做的2023年百度小说风云榜
  • 哪些做靠谱兼职网站有哪些链接买卖平台
  • 桂林小学网站建设seo网站关键词优化快速官网
  • wordpress html结尾重庆seo霸屏
  • ui培训班排行榜重庆seo网站建设
  • 苏州seo网站推广今日头条国际新闻
  • 用ssh做的简单网站网络营销是网上销售吗
  • 好搜搜索广告优化师
  • 南宁市建设厅网站百度搜索引擎入口登录
  • 安远网站制作设计网站排行
  • 数字中国建设峰会网站百度免费发布信息平台
  • 如何做服装的微商城网站建设兰州网络推广的平台
  • 网站各页面建网站设计
  • 朋友要我帮忙做网站东莞百度推广优化
  • 域名注册服务商网站现在最火的发帖平台
  • 求做网站软文写作平台发稿
  • 做一个企业的网站怎么做的5g站长工具seo综合查询
  • 凡科一个注册做2个网站东莞seo建站如何推广
  • 记账凭证做网站摘要怎么写东莞关键词排名快速优化
  • 创办一个网站要多少钱最近三天的国际新闻大事
  • 今日头条开放api接口沧州seo推广
  • 上海网站改版服务网站域名查询ip地址