本篇文章给大家带来的内容是关于javascript什么是面向对象?js中对象的理解,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
js就是个面向对象语言,一切皆对象!
一、什么是面向对象?
面向对象的语言最基本的标志就是类的概念。什么是类?类是包含多个属性和方法的集合,类的实例即对象。
因为历史原因,ECMAScript(后面简称JS)中对象的概念与基于类的语言的对象有所不同。ECMA-262 中把对象定义为“无序属性的集合,其属性可以包含基本值、对象或者函数”。
每个对象都是基于一个引用类型创建的。
二、面向对象特点
1、抽象:抽指把核心的东西抽出来,把与我们要解决的问题有关的东西拿出来摆在面前
2、封装:让使用对象的人不考虑内部实现,只考虑功能使用 把内部的代码保护起来,只留出一些个api接口供用户使用
3、继承:就是为了代码的复用,从父类上继承出一些方法和属性,子类也有自己的一些属性
4、多态:实际上是不同对象作用与同一操作产生不同的效果。多态的思想实际上是把“想做什么”和“谁去做“分开
三、对象的组成
1、方法 函数:过程、动态的
2、属性 变量:状态、静态的
四、创建对象的方法// 第一种:创建Object实例
var person = new Object();
person.name = 'tom';
person.age = 20;
person.sayIt = function(){console.log(this.name, this.age)}
// 第二种:对象字面量值
var person = {
name: 'tom',
age: 20,
sayIt: function(){console.log(this.name, this.age)}
}
上面两个例子创建的对象是一样的,都有一样的属性和方法。