最新要闻
- 詹姆斯二儿子全美排名 詹姆斯现身执教二儿子 基本情况讲解
- NASA帕克探测器第16次贴着太阳飞过:100万度高温下为啥不会融化?|当前关注
- 时讯:全新火车票来了:299元 一张票打卡三个城市
- 挑战马斯克“农民”弟弟!上海交大工科博导带队种菜:三个月出奇迹_观速讯
- 焦点速读:五星耐摔认证!荣耀X50图赏:十面抗摔的硬核曲屏
- 全员共赢20万!2023魅族王者荣耀冠军杯招募开启
- 温网第4日:中国金花4人出战,王欣瑜冲击32强!3位金花亮相女双
- 王一博的机场穿搭如同秀场,飞往上海参加戏剧节,有点期待
- 当前焦点!越来越热不是错觉 2024年或成为最热一年
- 马斯克:未来地球上的机器人数量将超过人类 物质不再短缺
- 免费MMO也能不卖数值:《逆水寒》手游登顶AppStore畅销榜-天天快资讯
- 全球今日讯!如果重来你还愿意选我当你的导师吗?“杀马特”少年的成长
- 焦点精选!博主在呼伦贝尔拍下绝美照片:几乎和WinXP蓝天白云壁纸一模一样
- 香港立法会三读通过区议会修例草案|焦点关注
- 哈工大回应网传抢教授话筒男生被录取:还没开始投档呢
- RTX 4090无限逼近4GHz:逆天功耗1127W!_环球今热点
手机
光庭信息跌4.57% 2021上市超募11亿2022扣非降74% 时快讯
搜狐汽车全球快讯 | 大众汽车最新专利曝光:仪表支持拆卸 可用手机、平板替代-环球关注
- 光庭信息跌4.57% 2021上市超募11亿2022扣非降74% 时快讯
- 搜狐汽车全球快讯 | 大众汽车最新专利曝光:仪表支持拆卸 可用手机、平板替代-环球关注
- 视点!美国首位女总统即将诞生?拜登恐怕要提前下岗,美政坛迎来变局?
- 当前速递!用理想仪器实现更好的颗粒 德国新帕泰克亮相CPHI & PMEC China获好评
- 微粒贷怎么申请开通 开通方法如下
- 焦点简讯:心疼!这位40岁的云南缉毒警,已是满头白发
家电
js的中的函数(二) 全球焦点
构造函数
JavaScript中,一个函数除了作为普通意义的函数外,还可以被用来定义为构造函数。什么是构造函数?就是可以用来生成一个对象的函数。例如:
【资料图】
function Student(name,age,city,address){ // this指向构造函数生成的对象 this.name = name; this.age = age; this.city = city; this.address = address; }
函数Student就是一个构造函数,函数名的首字母建议大写,以区别于普通函数。通过new 关键字,构造函数可以创建新的对象。
var xiaoming = new Student("xiaoming",18,"shenzhen","nan shan"); var xiaoping = new Student("xiaoping",19,"guangzhou","tian he"); var xiaojia = Student("xiaojia",18,"shantou","long hu");
xiaoming和xiaoqiang是我们通过构造函数创建的两个对象。以此,我们可以看出Student内部的关键字this指向当前的对象。构造函数虽然没有return语句,但是默认情况下,它返回的是this,也就是当前的对象。普通函数如果没有return语句返回undefined。如果不幸忘记写 new 关键字,那么函数返回的也是undefined。上述代码中的xiaojia变量,接收到的值就是undefined。
prototype属性
构造函数通过prototype属性可以获取构造函数的原型。我们可以通过原型,动态地添加原型方法。例如:
Student.prototype.hello = function(){ alert("Hello," + this.name); }
上述代码所示,我们动态地给Student的原型添加了一个hello方法。
原型继承链
JavaScript也是一种面向对象的语言。区别于Java语言的继承关系,JavaScript对象是通过原型来继承的。父对象、子对象、孙子对象之间的继承关系形成一个链条,我们称它为原型继承链。如下图所示:
xiaoming对象指向它的原型对象,这个原型对象的构造函数是Student,Student称为这个原型对象的构造器(constructor)。
这个原型对象又是继承于另外一个原型对象,它是由Object构造生成的。
xiaoming.__proto__; //xiaoming的原型对象Student.prototype; //Student作为原型对象的构造函数xiaoming.__proto__ == Student.prototype; //truexiaoming.__proto__.constructor == Student;//truexiaoming.__proto__.__proto__ == Object.prototype;//true
生成器
生成器也是一种特殊的函数,它提供了一种持续输出数据的能力。举一个斐波拉契生成器的例子如下:
//生成器 function* fib(n){ a = 0; b = 1; for (let i=0;i < n;i++){ yield a; [a,b] = [b,a+b]; } }
上述fib()生成器的定义如下:
- function*指出这是一个生成器的定义;
- fib是生成器的名称;
- (n)括号内列出生成器的参数,多个参数以逗号分隔;
- { ... }之间的代码是函数体,可以包含若干语句。函数体内部的yield语句是生成器的核心,它表达 了这个生成器对外一个持续数据的输出。
调用生成器
类似于函数的调用一样,我们用生成器的名称,后面紧跟括号和参数列表,对生成器进行调用。经过调用后的生成器才具有对外输出数据的能力。
var g = fib(10);
通过next()函数,不断抽取它的输出
var g = fib(10); g.next(); //{value:0,done:false} g.next(); //{value:1,done:false}
上述代码可知,next()函数返回一个对象。其中一个属性是value,表示返回值;另一个是done,表示抽取是否完成
生成器的遍历
通过一次次调用next()获取生成器的值始终不太方便,我们可以通过for循环对生成器进行遍历。
var g = fib(10); // 遍历生成器 for (;;){ let next = g.next(); if (next.done){ break; } console.log(next.value); }
更方便的遍历方式是通过for...of...的迭代器
var g = fib(10); for (let x of g){ console.log(x); }
文章同时发表在:码农编程网欢迎访问
本节重点:
- 什么是构造函数,构造函数的特点;
- 什么是原型链;
- 生成器的定义和作用;
- 如何调用生成器;
- 生成器的遍历。
关键词:
js的中的函数(二) 全球焦点
詹姆斯二儿子全美排名 詹姆斯现身执教二儿子 基本情况讲解
转股价下修难破局 12家银行可转债转股率不足1%
【新华500】新华500指数(989001)6日跌0.67% 环球热消息
NASA帕克探测器第16次贴着太阳飞过:100万度高温下为啥不会融化?|当前关注
时讯:全新火车票来了:299元 一张票打卡三个城市
挑战马斯克“农民”弟弟!上海交大工科博导带队种菜:三个月出奇迹_观速讯
焦点速读:五星耐摔认证!荣耀X50图赏:十面抗摔的硬核曲屏
全员共赢20万!2023魅族王者荣耀冠军杯招募开启
温网第4日:中国金花4人出战,王欣瑜冲击32强!3位金花亮相女双
王一博的机场穿搭如同秀场,飞往上海参加戏剧节,有点期待
快播:植信投资首席经济学家连平:下半年宏观政策将加力提效 三季度稳增长政策或集中出台
当前焦点!越来越热不是错觉 2024年或成为最热一年
马斯克:未来地球上的机器人数量将超过人类 物质不再短缺
免费MMO也能不卖数值:《逆水寒》手游登顶AppStore畅销榜-天天快资讯
全球今日讯!如果重来你还愿意选我当你的导师吗?“杀马特”少年的成长
焦点精选!博主在呼伦贝尔拍下绝美照片:几乎和WinXP蓝天白云壁纸一模一样
香港立法会三读通过区议会修例草案|焦点关注
常用的生物医学科研工具合集 世界实时
哈工大回应网传抢教授话筒男生被录取:还没开始投档呢
RTX 4090无限逼近4GHz:逆天功耗1127W!_环球今热点
世界看热讯:“长江禁捕 打非断链”专项行动 湖北5集体、9人上榜
7月6日 13:18分 京基智农(000048)股价快速拉升-世界即时
环球观焦点:滨州市直机关工委到滨州中院调研机关党建工作
这届年轻人盯上了电动轮椅 通勤不带头盔不上牌不违规:专家痛批占用公共资源
40%果肉 层层爆浆!榴莲西施千层蛋糕400gx2盒+戚风蛋糕x1盒69元大促_天天热资讯
三亚海鲜店缺斤短两被网友曝光 官方通报:商户清退出场罚款30万元
全球新资讯:同级唯一!宝骏云朵全球首创“云朵沙发”座椅:直接把大沙发搬进车里
李玟遗嘱财产全部留给母亲 网友:妈妈想要的是女儿 天天滚动
中国三人女篮积分升至世界第1 至11月排名前3球队将直通巴黎奥运_环球关注
天天热头条丨直播软件开发知识:实现感知网络质量功能
女学生拒客服工作被HR攻击 别上班了去死:公司回应 网友吐槽太过分
华为轮值董事长胡厚崑:华为盘古大模型3.0将在7月7日发布-热点聚焦
弹力修身透气:361度男运动裤夏季薄款梭织长裤69元 世界热资讯
中石化出品:鸥露竹浆抑菌抽纸28包/29.9元抄底 天天热资讯
每日热闻!实现AI全球天气精准预报!华为成果登上顶级科研杂志《Nature》
环球滚动:资金流向(7月5日)丨华工科技、新易盛、北方稀土获融资资金买入排名前三
荣耀MagicBook X 16 2023笔记本发布 首发价3699元起
16-7系统启动和内核管理
全球速递!超达装备7月6日快速上涨
清明节吃什么传统食物英语(清明节吃什么传统食物)
环球快资讯:@毕业生,从求职到入职,这份避坑指南请收好→
世界上最小的相机问世!宽4cm 重17g 只要350元_当前聚焦
【天天快播报】曝iPhone 15全系将配备更大的电池:续航大大改善
电动车的底 让自己弄掉了 热讯
15万元珠宝被家人当垃圾丢了 网友:我想当门口那个垃圾桶-报道
每日速讯:马斯克称中国会有很强的AI能力:中国下定决心做一件事就一定能做好
中方呼吁国际社会采取行动让每一个儿童都远离战火硝烟 当前速看
当前时讯:为什么要使用消息队列
三大亮点提前打卡世界人工智能大会
5年超长保质期:碳性电池40节19.9元大促
手机被大妈捡走男子狂追100多公里:从平顶山追到白云山
全球球精选!真矿泉 含锶矿物离子!峨眉山N30古岩矿泉水大促 1.24元/瓶
天天观焦点:15万以内大五座纯电 宝骏云朵内饰官图发布:值得友商一学
环球即时看!被污名化要还其清白 教授呼吁别把玩游戏当不务正业:人性需要释放
女生毕业删除90%同学被骂有病 都是塑料感情:无效社交越来越多
世界新资讯:实拍日本拉链式交替通行 还会双闪感谢后车 网友感叹素质真高
【世界播资讯】没人买!RTX4060发布近一周就跌破首发价 商家还在狂降价
视焦点讯!小米电视蝉联榜首:上半年出货量逼近400万台 今年第一或不保
研究报告:美国近一半自来水中含有“永久化学物质”
全球即时:读发布!设计与部署稳定的分布式系统(第2版)笔记20_实例层之代码
存款流向多渠道 固收类理财产品最受青睐_天天短讯
世界看点:【读财报】FOF基金透视:上半年超五成产品录得正收益 兴证全球基金规模、回报均居前
厄尔尼诺再现 农产品价格波动 各方期盼推出天气指数期货-快看
看热讯:中兴全球首发5G车地系统!地铁网速破2.1Gbps 全车看视频不卡
全球新消息丨存储行业拐点来了:SSD等要涨价 有厂商财报明确!
首发2999元!华为MatePad Air原野绿开售:首款144Hz高刷全面屏平板
今日看点:《碟中谍7》成就系列最佳
抑郁症有多可怕 看完让人不寒而栗:李玟等明星都因它离世
天天快播:国际原子能机构:未在扎波罗热核电站发现地雷或爆炸物痕迹
即时:iPhone的无线充电 特斯拉要用到车上了
苹果以旧换新突然涨价!iPhone、Mac又升值了 最高能抵2万元
李玟生命的最后时刻:中医母亲在她头顶扎针,求西医救女儿多一分钟 当前快播
学习C++这一篇就够了(基础篇) 每日速看
一天吃透Kafka面试八股文 全球报道
2023年年中总结_世界新资讯
天天热点!看完沉默:那些我们想买 却无法得手的半导体公司
天天滚动:千元续航怪兽!荣耀X50开启预售:1399元起
在民科吧里 我找到了“中华有史以来最接近神的人”
【全球速看料】你发现没?苹果从来不提什么虚拟现实、AI:只有华为学会了!
银河麒麟才是第一国产操作系统!连续12年无敌
上单奶妈出装 快来看看
环球关注:俄媒:中国新的对外关系法意味着什么?
环球观热点:22-数码管的动态显示
数年前患上抑郁症 轻生去世!李玟轻生当天还在给粉丝发语音 多名演艺界人士悼念|天天观天下
微博崩了!歌手李玟轻生去世 姐姐发声:数年前患上抑郁症
【后端面经-计算机基础】HTTP和TCP的区别-环球最资讯
每日热讯!文心一言 VS 讯飞星火 VS chatgpt (55)-- 算法导论6.3 1题
每日时讯!华擎出品 第一次半高刀卡!Intel显卡也如此娇小可爱
AI加持江湖更自由!《逆水寒》手游体验:单人也能自由探索 告别“每日一条龙”
女子花盆里种出2.5米高向日葵 网友:不愧是山东的
2023年女足世界杯最终名单公布 王霜与唐佳丽等中国女足主力队员悉数入选
一头搁浅的抹香鲸吸引动物学家注意 体内含重达9.5公斤的龙涎香
苹果最新旗舰iPhone 15系列预计今年上市 其电池容量具有较大提升
重庆出现入汛以来最强降水 江滩公园部分道路被淹导致成为江心岛
女孩花费两个月在鱼缸中做出“海市蜃楼” 曾是哈尔滨工业大学硕士
广州发布垃圾分类专管员拟聘用人员名单公告 竟有一名研究生上榜
在尚未取得环保许可下开挖人工湖 知名球星内马尔被重罚1600万雷亚尔
电影《孤注一掷》发布“境外诈骗工厂”版群像海报 为宁海导演作品
Twitch平台知名女主播靠直播睡觉赚钱 月收入高达1448万元