城市直播房产教育博客汽车
投稿投诉
汽车报价
买车新车
博客专栏
专题精品
教育留学
高考读书
房产家居
彩票视频
直播黑猫
投资微博
城市上海
政务旅游

JavaScript对象及其创建的几种方式

6月26日 逆落雪投稿
  在JavaScript中,几乎所有事物都是对象。布尔是对象(如果用new关键词定义)数字是对象(如果用new关键词定义)字符串是对象(如果用new关键词定义)日期永远都是对象算术永远都是对象正则表达式永远都是对象数组永远都是对象函数永远都是对象对象永远都是对象
  所有JavaScript值,除了原始值,都是对象。原始值指的是没有属性或方法的值。原始数据类型指的是拥有原始值的数据。
  JavaScript定义了5种原始数据类型:stringnumberbooleannullundefined
  原始值是一成不变的(它们是硬编码的,因此不能改变)。
  假设x3。14,您能够改变x的值。但是您无法改变3。14的值。1内置对象varx1newObject();一个新的Object对象varstrnewString(你好!迈克!);一个新的String对象varx3newNumber(456);一个新的Number对象varx4newBoolean(true);一个新的Boolean对象vararrnewArray(3);一个新的Array对象varregnewRegExp(javascript,i);一个新的RegExp对象varx7newFunction();一个新的Function对象varrightnownewDate();一个新的Date对象
  JavaScript提供原始数据类型字符串、数字和布尔的对象版本,所以并无理由创建复杂的对象,原始值快得多!请使用对象字面量{}代替newObject()。请使用字符串字面量代替newString()。请使用数值字面量代替Number()。请使用布尔字面量代替newBoolean()。请使用数组字面量〔〕代替newArray()。请使用模式字面量代替newRexExp()。请使用函数表达式(){}代替newFunction()。
  实例:varx1{};新对象varx2;新的原始字符串varx30;新的原始数值varx4新的原始逻辑值varx5〔〕;新的数组对象varx6()新的正则表达式对象varx7function(){};新的函数对象2自定义对象
  2。1直接以名称:值的对象字面量来创建单一对象
  对象是包含变量的变量。值按照名称:值对的形式编写(名称和值以冒号分隔)。varperson{firstName:Bill,lastName:Gates,id:678,fullName:function(){returnthis。firstNamethis。lastN}};
  2。2使用newobject关键字构造单一对象,并可动态地给对象添加属性和方法varcarnewObject();car。nameBenz600;car。car。capacity2。0;car。runcanRfunctioncanRun(){document。write(
  Themostspeed250km);}car。runfunction{}document。write(car。name);car。run();
  以上创建单一对象的方法可以动态新增、更新、delete属性。
  2。3使用function关键字构造对象类型或蓝图(构造函数或对象构造器)functionCar(name,color,capacity){this。this。this。this。runfunction(){}}varcarnewCar(Benz600,color,2。0);car。run();
  无法为已有的对象构造器添加新属性。如需向构造器添加一个新属性,则必须把它添加到构造器函数。但所有JavaScript对象都从原型继承属性和方法。
  日期对象继承自Date。prototype。数组对象继承自Array。prototype。Car对象继承自Car。prototype。
  Object。prototype位于原型继承链的顶端:
  日期对象、数组对象和Car对象都继承自Object。prototype。Car。prototype。price4500003通过函数Object。create()来创建对象
  另外,在ECMAScript5中,也可以通过函数Object。create()来创建对象。
  Object。create(prototype,descriptors)
  实例:【示例1】下面示例使用Object。create定义一个对象,继承null,包含两个可枚举的属性size和shape,属性值分别为large和round。varnewObjObject。create(null,{size:{属性名value:large,属性值enumerable:true可以枚举},shape:{属性名value:round,属性值enumerable:true可以枚举}});console。log(newObj。size);largeconsole。log(newObj。shape);roundconsole。log(Object。getPrototypeOf(newObj));null【示例2】下面示例使用Object。create定义一个与对象直接量具有相同原型的对象。varobjObject。create(Object。prototype,{继承Object。prototype原型对象x:{value:undefined,属性值writable:true,可写configurable:true,可以配置enumerable:true可以枚举}});console。log(obj。prototypeObject。getPrototypeOf(obj));Objprototype〔objectObject〕【示例3】下面示例定义一个对象,使用访问器属性b来读写数据属性a。varobjObject。create(Object。prototype,{a:{数据属性awritable:true,value:a},b:{访问器属性bget:function(){returnthis。a;},set:function(value){this。}}});console。log(obj。a);aconsole。log(obj。b);aobj。b20;console。log(obj。b);204函数也是一个对象
  4。1函数声明functionmyFunction(a,b){}
  4。2通过名为Function()的内建JavaScript函数构造器来定义varmyFunctionnewFunction(a,b,returnab);varxmyFunction(4,3);
  您实际上无需使用函数构造器。可以将一个函数表达式(匿名函数)赋值给一个变量(函数名用变量名来表示)。在变量中保存函数表达式之后,此变量可用作函数。varmyFunctionfunction(a,b){returnab};varxmyFunction(4,3);
  上面的函数使用分号结尾,因为它是可执行语句的一部分。
  JavaScript函数能够在声明之前被调用,称为函数提升:myFunction(5);functionmyFunction(y){}
  使用表达式定义的函数不会被提升。
  JavaScript函数因为是对象,都有属性和方法。
  arguments。length会返回函数被调用时收到的参数数目:functionmyFunction(a,b){returnarguments。}
  End
投诉 评论 转载

特斯拉不是地球人?FBI公布解密文件,内容让人难以置信如果说科技是承载人类高速前行的汽车,那么科学就是这辆汽车的引擎和方向盘,由此可见科学对人类的重要性。可科学并不能自主发展,它毕竟只是一种认识世界的知识系统、一个人类建立起……JavaScript对象及其创建的几种方式在JavaScript中,几乎所有事物都是对象。布尔是对象(如果用new关键词定义)数字是对象(如果用new关键词定义)字符串是对象(如果用new关键词定义)日期永远都是对象算……架在波音飞机上的高空望远镜最新发现有光照的月表也有水美东时间10月26日NASA宣布:利用一架波音改装的全球最大高空望远镜同温层红外天文台(SOFIA)最新观测到,位于月球南极地带的克拉维斯环形山存在水分子。尽管探测含水量……雅典NOTOS2021邮展接受2框和3框邮集NOTOS2021欧洲邮展将于2021年11月19日至22日在希腊雅典举行。日前,邮展组委会决定将接受2框和3框的邮集参赛。大家都知道,一框邮集是在大约20年前推出的,也就是在……离婚后,江宏杰秀新欢,而福原爱活成女王,搬进豪宅,差距惊人都说这个世界上男人的话最不可信,当你把所有的希望寄托在男人身上时候,那一刻就输了,人都是视觉动物,当你的世界不再完美,男人自然就会去欣赏别的世界。之前江宏杰和福原爱的感情……虚无的真空场可以想象,存在得有两个前提条件,内部的存在和外部的存在。可是在初始存在之前是既无内部也无外部。内部空间为0,0没有自身它与外部一样大,外部能有有多大?由于失去内部的支撑,它有多……事件视界内连光都无法逃脱,那么黑洞就真的只吃不吐吗?黑洞可能是整个宇宙中存在的最极端天体,虽然物质或能量的每一个量子都受到引力影响,但无论到哪里,除了黑洞内部,都有其他力能够克服引力。黑洞最重要的特征是存在事件视界,其他类型的天……抗菌纳米纤维敷料的伤口愈合特性共混和核壳纳米纤维的比较Biomater。Sci。:含硫酸软骨素的镁矿化抗菌纳米纤维敷料的伤口愈合特性共混和核壳纳米纤维的比较DOI:10。1039D0BM00530D抗菌纳米纤维敷料的开发可以……阿来文学丰富了我的人生文学丰富了我的人生文阿来已经有三年多时间,我没有进行小说创作了,今年冬天,我开始写一部小说,写到十多天后,又停了下来。写作中的小说沿着小说的逻辑在进展,按照人对于美……研究表明,18000年前人类饲养的世界上最危险的鸟类领土,侵略性和经常与恐龙相比,这种鸟是令人惊讶的驯化候选者。然而,一项对从新几内亚狩猎采集者使用的两个岩石掩体中挖掘出的1,000多块蛋壳碎片进行的新研究表明,早期人类可……CellMetab揭示对胰岛素具有不同敏感性的人类白色脂肪细白色脂肪组织(whiteadiposetissue,WAT)通过储存和释放脂质以及分泌调节热量摄入的因子在能量稳态中发挥重要作用。WAT的一个标志性特征是其固有的可塑性,由几种……车德就是人品现如今,车辆在人们生活中的地位越来越重要,因此车辆的行为规范车德,也越来越受人注重。前不久某地发生的两起恶性交通事故就说明车德的重要:一起特大交通事故,肇事者弃死伤者不顾逃之夭……
三个科技控都未必清楚的科技冷知识!第一条超好玩秦始皇陵中的百吨水银,是从哪儿来的?灌水银又有何作用?中国人去印度后,属于什么种姓?可以娶婆罗门的女子吗?如何保持内心平衡,高人归结三十六字阿娇被求婚晒钻戒男友赖弘国被扒竟是一个渣男航母撤离西太后,美国果然有阴谋?25架战机逼近,中国必须警惕欧盟出手了,将禁止美国旅客入境,因美国未能控制冠状病毒大流行燕云台安只结局安只和耶律只没在一起了吗机动车违反禁令标志指示的罚款及扣分多少银广夏股票市场是标准的三步一回头反弹趋势王永庆世纪行者比肩松下幸之助的经营之神武汉炸街了!什么原因引起发生爆炸?专家分析爆炸源来自下水道
男性尿痛有哪些原因造成的呢猛鬼宿舍伥鬼与天使模式玩法攻略埋葬想长寿多吃这些食物长寿的人经常吃的十种食物首届中国垒球联赛落幕浙江问鼎总冠军知青往事时隔半个世纪,至今难忘回上海探亲的艰难旅程苜蓿菜的做法和吃法(紫花苜蓿的家常做法)热传聚热点网 经济学人:乔布斯的福音书听懂新闻英语的方法产后如何恢复产后重塑辣妈的秘诀工银支付客户单笔金额超限怎么办大自然的语言教案

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找江西南阳嘉兴昆明铜陵滨州广东西昌常德梅州兰州阳江运城金华广西萍乡大理重庆诸暨泉州安庆南充武汉辽宁