javascript - 对于object,是否可以这样理解?
高洛峰
高洛峰 2017-04-11 11:46:57
[JavaScript讨论组]

1、每个js文件中都只有一个object类型,本身object没有什么含义,存在只是用于实例化对象。
2、从地位上讲,object类型与array、date、string、number、function等类型是相等的,并不存在父子之类的关系
3、object是所有我用new object()实例化的对象的祖先,与我用new function()、new Array()实例化的对象没有任何关系。
4、我可以用object实例化任何功能的对象,甚至那些功能可以代替Array、string等类型的功能。

上述对object类型的理解是否正确呢?错误又在哪里呢?
谢谢

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(2)
大家讲道理

很不幸地告诉你,你这4条地理解全部不正确。

从你的描述中可推测,你所说的object是指Object构造函数。

1、每个js文件中,有很多object类型的变量,但是Object构造函数只有一个,Object是有含义的,用于创建对象,且实例化对象并不一定非要用Object构造函数。Object.create(null)即可构造一个对象。

2、没有什么地位不地位的。Array、Date、Function是引用类型,即对象,String、Number是基本类型,即值类型。Array、Date、Function除了是它们本身的类型之外,也都是Object类型,比如Array,它是Array类型,但也是Object类型。举例:你是人类,也是哺乳动物。

3、Object是你用new Object()实例化的对象的构造器,而不是祖先,与你用 new Function()、new Array()实例化的对象是有关系的,关系见2.

4、你不可以实例化任何功能的对象(比如你不能实例化window对象)。

迷茫

我很惊讶于你是怎么能YY到第一点的
能讲下思路吗

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

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