JavaScript中的面向对象是个老生常谈的话题,但是依然有很多小伙伴处于懵逼的状态。面试时候最担心的就是被问到面向对象相关的内容,自己看过无数的资料,依然对面向对象百思不得其解。到底什么是原型?什么是构造函数?什么是继承。。。一提到这些概念那真是欲哭无泪、悲愤交加,甚至恨的直咬牙!所以有必要重新再谈一次面向对象。同时我也希望通过这几篇文章让你对面向对象由恨生爱,再到爱恨交加,最后爱得死去活来!

对象

  各位老铁们应该听过一个词叫“一切皆对象”,而“面向对象”中也带了一个“对象”,可见“对象”这个词非常重要。所以弄清楚 “对象”是什么尤为重要。

  对象在生活中指的是女朋友或者男朋友,而在JavaScript里说的通俗一点就是一个放了很多属性与方法的集合,有很多的属性与方法是一个对象最显著的特点(可以粗暴的认为,但凡有属性与方法的就是个对象)。JavaScript里除了运算符、语句、表达式(这些都是基本语法,任何一门语言都得有基本的语法)以外,其它的都是对象或者说是某个对象身上的一部分,所以说js里一切皆对象是有讲究的。换句话说,我们在写js的时候,其实都是用一些基本语法去操作对象
 
1、字符串

'kaivon'.length;         //6 属性
'kaivon'.substring(2);   //ivon  方法

2、数字

(12.25).toFixed(1);     //12.3 方法

3、布尔值

true.toString();        //true 方法

4、函数

const fn=function(){};
fn.name;    //fn    属性
fn.call(window);    //方法

数组与对象想必就更不用解释了

对象分类

在JavaScript中我把对象分为三类,全局对象、内置对象、自定义对象

1、全局对象

  • 它是JavaScript预定义的对象,作为JavaScript的全局函数和全局属性的占位符
  • 它是顶层对象,由宿主环境决定类型
    1、网页里为window

    this===window;  //true

    2、node里为Global

  • 它身上的属性或方法可以直接使用,不用指定所属对象
parseInt('12a');   //12
window.parseInt('12a);  //12
String(12); //12
window.String(12);  //12
  • 它有构造函数但无法实例化
window.constructor===Window; //true
window instanceof Window;   //true
new Window();   //报错

2、内置对象

  • ECMAScript自己定义的对象,每个对象都有一个自己对应的构造函数

    Object.prototype.constructor===Object;      //true
    Array.prototype.constructor===Array;        //true
    Function.prototype.constructor==Function;   //true
  • 每个内置对象都是全局对象的一个属性(内置对象都是全局对象的儿子)
    window.Object===Object;      //true
    window.Array===Array;        //true
    window.Function==Function;   //true
  • 内置对象分类
    Object、Number、String、Boolean、Array、Math、Date、JSON、RegExp、Function...
    所有内置对象请移步https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects
  • 内置对象之间也有继承关系,所有内置对象中Object是绝对的大哥,其它对象都会继承它原型里的属性与方法
Number.prototype.__proto__===Object.prototype;  //true
String.prototype.__proto__===Object.prototype;  //true
Boolean.prototype.__proto__===Object.prototype; //true
Array.prototype.__proto__===Object.prototype;   //true
Function.prototype.__proto__===Object.prototype;//true

可能有些小伙伴在这里会不理解,没关系。这里想让你知道的是内置对象反正能跟Object扯上关系,后面的文章会详细去说,我们要放长线掉大鱼。

3、自定义对象

面向对象的内容,后面文章详细说

这篇文章主要介绍对象的概念,下篇文章详细介绍面向对象里的相关概念

转载于:https://blog.51cto.com/13258913/2133666

再和“面向对象”谈恋爱 - 对象简介(一)相关推荐

  1. 十二星座匹配对象_十二星座爱情配对,看着合适各自谈恋爱的星座

    原标题:十二星座爱情配对,看着合适各自谈恋爱的星座 ♚双子座爱情配对 双子座不喜欢单独的生活,所以水瓶座能给家庭带来新鲜的变化,这是最理想的对象,水瓶座的人能带给你年轻及活力.还有聪明活泼,温柔可爱的 ...

  2. 面对对象 谈恋爱五大原则浅析!

    面向对象编程其实无时无刻不在向我们阐释婚恋观 面向对象编程5大原则,想来跟处对象是一样一样的: 单一职责原则(SRP): 做一个单纯的人,才会有简单<稳稳的幸福-陈奕迅>: 一个类应该仅有 ...

  3. 我在互联网大厂,和同事谈恋爱

    作者 | 陈杨园 来源 | 豹变(ID:baobiannews) 工作节奏快,交友渠道闭塞,让互联网在一些调研报告中成为单身比例最高的行业.单身,仿佛已成为互联网大厂年轻人的常态了.一些苦单身已久的大 ...

  4. 12星座谈恋爱:说分手,很容易

    12星座谈恋爱:说分手,很容易 有些星座的人常常把「分手」挂在嘴巴上,有时是一种恐吓.有时是一种逃避,也有些人只是当成口头禅,但也有许多人是认真的.只是不管如何,总是把分手挂在嘴上,其实也不见得会是一 ...

  5. 69的人因为穷不谈恋爱,这届年轻人脱单太难了

    关于恋爱这个问题,曾经有一句很流行的话:"是酒不好喝,还是手机不好玩?非要谈恋爱?"这句话的意思不是说喝酒玩游戏这两件事多有意义,而是说比起谈恋爱,有更多有意思的事情可以做.那么到 ...

  6. 【北京】No317| 在京在读研究生,可静可动,乐观,脾气好,很佛系的女孩,喜欢运动,旅游,读书,小吃货一枚,谈恋爱比较粘人...

    大家好,我是狐妖小红娘~苏苏. 程序员脱单俱乐部,旨在解决广大单身青年的单身问题. 不要被这个名字所迷惑,程序员和非程序员都可以来投稿. 欢迎单身的程序员的朋友来投稿,也欢迎非程序员的朋友来投稿~ P ...

  7. 工具“正确”打开方式——如何用notion来谈恋爱

    老天爷,谁也想不到我的notion打开方式居然会是如此.之前一看全英文界面,还要慢吞吞的网速,直接就被我否决了. 结果,真香. 今天简单说一说如何用notion来谈恋爱 昨天又吵架了,想着如此内耗也不 ...

  8. 泡妞技术帖:一物降一物 金庸爷爷教你如何谈恋爱

    就金庸大侠的小说来讲,对于女性人物塑造是武侠小说里面最成功的(没有之一),甚至许多言情小说都比不上(比如琼瑶奶奶),不管是适用面还是真实性上来讲,基本可以涵盖你日常生活能接触到的人了.so,下面开讲. ...

  9. 千万要找一个程序员谈恋爱!

    提到程序员,很多人都会有一个刻板印象:呆板.木讷.不懂浪漫. 甚至女生都会觉得,恋爱千万不要找一个程序员,不然所有对恋爱的美好憧憬都会消失. 你印象里的程序员是穿着格子衬衫,戴着黑框眼镜,只会敲击键盘 ...

最新文章

  1. Head First设计模式之目录
  2. R语言使用igraph包进行网络(network)可视化实战:将变量映射到网络节点(vertex)、将变量映射到网络的边(edge)
  3. EOS 消息设计(3)并行处理之状态评估
  4. 最小的linux内核编译,Linux最小内核移植
  5. Oracle RAC安装过程中所使用的一些配置
  6. .attr()与.removeAttr()
  7. Linux下使Shell命令脱离终端运行
  8. Linux (Ubuntu/deepin等)终端命令安装Lamp
  9. 有没有一段代码,让你觉得人类的智慧也可以璀璨无比?【转】
  10. 【转】[WSL2]WSL2迁移虚拟磁盘文件ext4.vhdx
  11. 运行Qt程序的一些注意事项
  12. 如何去掉DataTable中的重复行(新增.net 2.0中最新解决方法---简便)
  13. nyoj_49_开心的小明_201403161133
  14. Android studio 下载SDK
  15. python numpy计算任意底数的对数 log
  16. web前端emoji表情
  17. HBuilder 开发工具
  18. 昨晚 win7 盗版 黑屏了
  19. 域用户账户与计算机账户的区别,域用户账户与本地用户账户的异同是什么?
  20. 提取Excel中文字链接地址

热门文章

  1. SAP MM 带有Return标记的STO,不能创建内向交货单?
  2. 如何“愚弄”人工智能?
  3. SAP SD基础知识之组织结构
  4. ETC带火车牌识别设备 多方企业狭路相逢
  5. 强化学习应用于组合优化问题
  6. 腾讯的人工智能大战已然打响!
  7. 《数学之美》第11章 如何确定网页和查询的相关性
  8. Python 之 Matplotlib (二)figure
  9. 世界一流大学观察报告:斯坦福大学何以后来居上?
  10. 20个!中国科协发布2020年重大科学问题和工程技术难题