**js进阶大纲**
简单的表面组成:
**对象的属性分两类,一类是数据属性,一类是访问器属性**
1,数据属性用来保存数据。
2,访问器属性不用来保存数据,而是定义了get,set两个函数,读取属性时,自动调用get,当访问写入属性时,自动调用set。
**属性的特性**
1,单个属性用xx.getOwnPropertyDescripeor((对象名)),(属性名))来获取
2,所有属性用xx.getOwnPropertyDescripeors((对象名)))来获取
特性:
configurable:true/false 代表是否可操作属性
enumerable : true/false 是否可遍历 就是可以for循环吗
value : 值 属性值 就是原来的值
writable: true/false 是否可修改属性值
每个对象的属性值不全一样,
一般在构造函数中有get(),代表可读取,set(),代表可修改
用Object.defineProperty来修改原有特性或添加新特性。
检测是否可扩展: Object.isExtensible(对象名) ------就是添加属性
检测是否封印: Object.isSealed(对象名)-----------能否增删,能修查
检测是否冻结: Object.isFrozen(对象名)-----------能否增删改,只能查
禁止扩展 : Object.preventExtensible(对象名)------不能添加属性了
封印 : Object.seal(对象名)-------------------不能增删,能修查
冻结 : Object.freeze(对象名)-----------------不能增删改,只能查

**每个构造函数都有一个peototype(原型)属性,值是Object对象的实例,对象中的所有方法啊属性啊都能被他的实例共享或者说继承**

js面向对象的笼统介绍的更多相关文章

  1. JS面向对象介绍

    JS面向对象介绍 首先面向对象是什么?为什么要使用面向对象. 因为JavaScript对每个创建的对象都会自动设置一个原型(谷歌火狐中是proto),指向它的原型对象prototype,举个例子: f ...

  2. 浅谈JS面向对象之创建对象

    hello,everybody,今天要探讨的问题是JS面向对象,其实面向对象呢呢,一般是在大型项目上会采用,不过了解它对我们理解JS语言有很大的意义. 首先什么是面向对象编程(oop),就是用对象的思 ...

  3. 原生JS面向对象思想封装轮播图组件

    原生JS面向对象思想封装轮播图组件 在前端页面开发过程中,页面中的轮播图特效很常见,因此我就想封装一个自己的原生JS的轮播图组件.有了这个需求就开始着手准备了,代码当然是以简洁为目标,轮播图的各个功能 ...

  4. js面向对象、创建对象的工厂模式、构造函数模式、原型链模式

    JS面向对象编程(转载) 什么是面向对象编程(OOP)?用对象的思想去写代码,就是面向对象编程. 面向对象编程的特点 抽象:抓住核心问题 封装:只能通过对象来访问方法 继承:从已有对象上继承出新的对象 ...

  5. JS面向对象编程:对象

    一般面向过程的写法都是写很多function,坏处:1.代码复用不好 2.函数名称容易重复冲突 下面介绍面向对象的写法: 在JS中每个函数function都是一个对象. 比如,下面这个就是一个对象,我 ...

  6. js面向对象设计之class继承

    EcmaScript 2015 (又称ES6)通过一些新的关键字,使类成为了JS中一个新的一等公民.但是目前为止,这些关于类的新关键字仅仅是建立在旧的原型系统上的语法糖,所以它们并没有带来任何的新特性 ...

  7. js面向对象设计之function类

    本文仅探讨如何合理的使用 function 在 javascript中实现一个面向对象设计的类.总所周知,javascript 并不能实现一个真正意义上的类,比如 protect 比如 函数重载.下面 ...

  8. js面向对象理解

    js面向对象理解 ECMAScript 有两种开发模式:1.函数式(过程化),2.面向对象(OOP).面向对象的语言有一个标志,那就是类的概念,而通过类可以创建任意多个具有相同属性和方法的对象.但是, ...

  9. ES6学习笔记(三):教你用js面向对象思维来实现 tab栏增删改查功能

    前两篇文章主要介绍了类和对象.类的继承,如果想了解更多理论请查阅<ES6学习笔记(一):轻松搞懂面向对象编程.类和对象>.<ES6学习笔记(二):教你玩转类的继承和类的对象>, ...

随机推荐

  1. 在Windows操作系统的文件管理器中集成Azure DevOps Server (TFS)工具菜单

    故事场景 使用过SVN的用户,都知道在Windows的文件夹上点击鼠标右键,就会弹出Tortoise SVN的操作菜单(俗称小乌龟).通过这个功能,用户不需要打开SVN工具,可以直接在Windows的 ...

  2. @JsonView的使用

    1.使用场景 在某一些请求返回的JSON中,我们并不希望返回某些字段.而在另一些请求中需要返回某些字段. 例如: 在查询列表请求中,不返回password字段 在获取用户详情中,返回password字 ...

  3. [转帖]Select count(*)和Count(1)的区别和执行方式

    Select count(*)和Count(1)的区别和执行方式 https://www.cnblogs.com/VicLiu/p/11672303.html 在SQL Server中Count(*) ...

  4. docke通信之Linux 网络命名空间

    一.前言 namespace(命名空间)和cgroup是软件容器化(想想Docker)趋势中的两个主要内核技术.简单来说,cgroup是一种对进程进行统一的资源监控和限制,它控制着你可以使用多少系统资 ...

  5. Prometheus Alertmanager 介绍详解

    Prometheus 之 Alertmanager 介绍详解 告警无疑是监控中非常重要的环节,虽然监控数据可视化了,也非常容易观察到运行状态.但我们很难做到时刻盯着监控,所以程序来帮巡检并自动告警,这 ...

  6. .Net工具类--表达式目录树解析DataReader和DataTable

    一.概述 在项目中经常会使用SQL去操作数据库,在读取数据的时候返回结果一般是DataReader和DataSet,其中DataaSet里面可以包含多个DataTable. 读取到数据之后,一般情况下 ...

  7. sqlserver之datepart和datediff应用查找当天上午和下午的数据

    DATEPART() 函数用于返回日期/时间的单独部分,比如年.月.日.小时.分钟等等. DATEDIFF() 函数返回两个日期之间的时间差. --查找当天上午的数据 ) --查找当天下午的数据 ) ...

  8. 学习Linq之前必须要了解的扩展方法

    本文主要以下面几个方面来详细讲解扩展方法:在C#3.0之前没有扩展方法的状态(或者你不会使用不知道扩展方法的时候).扩展方法的语法及怎么使用.怎么正确的使用扩展方法: 一.首先说一下在C#3.0之前没 ...

  9. Struts2处理(jQuery)Ajax请求

    1. Ajax     Ajax(Asynchronous JavaScript and XML,异步JavaScript和XML)时一种创建交互式网页应用的网页开发技术,它并不是一项新的技术,其产生 ...

  10. python神操作将list拉平

    python 神操作   将list 拉平 list_of_lists = [[1], [2, 3], [4, 5, 6]]sum(list_of_lists, [])