对象基础

对象是一组无序的原始数据类型(或引用数据类型)序列,并且这个序列以键值对的形式存储.序列中的每一项被称之为属性(函数称为方法),并且每一个属性名必须是唯一的.

var ageGroup = { 30:"children", 100:"very old" }; console.log(ageGroup["30"]);//属性名可以是字符串或者数字,但如果属性名是数字,它就必须用方括号来取值

原始数据类型以值的形式直接将值存储到变量里,值不变
   var person = "Kobe";
   var otherPerson = person;
   person = "Bryant";
   console.log(person);//Bryant
   console.log(otherPerson);//Kobe

引用数据类型的值是是以引用的形式存储,值会变
   var person = {name: "Kobe"};
   var otherPerson = person;
   person.name = "Bryant";
   console.log(person.name);//Bryant
   console.log(otherPerson.name);//Bryant

可配置性(Configurable):指明该属性是否可以被删除
   var person = {};
   Object.defineProperty(person, "name", {configurable: false, value: "Kobe"});
   defineProperty将属性添加到对象,或修改现有属性的特性,三个值是对象,属性名,属性
    Object.defineProperty(person, "age", {configurable: true, value: 30});

person.name = "Bryant";
    console.log(person.name);//Kobe
    console.log(person.age);//30

person.age = 40;
    delete person.name;
   delete person.age;
    console.log(person.name);//Kobe
    console.log(person.age);//undefind

枚举性(enumerable):指明该属性是否能在for/in中被返回
   var person = {};
    Object.defineProperty(person, "name", {configurable: true, enumerable: true, value: "Kobe"});
    Object.defineProperty(person, "age", {configurable: true, enumerable: false, value:30 })//将age属性隐藏
   for(var x in person) { console.log(x + ":" + person[x]); }//name:Kobe
    for,in是遍历对象的每一个属性,for(var 变量 in 需要遍历的对象或数组),一般来说专门针对json循环遍历

可写性(writable):指明该属性能否被修改
   var person = {};
    Object.defineProperty(person, "name", {writable: false, value: "Kobe"});
   Object.defineProperty(person, "age", {writable: true, value: 30});
    person.name = "Bryant";
    person.age = 40;
    console.log(person.name);//Kobe
    console.log(person.age);//40

时间: 2024-07-30 20:24:42

对象基础的相关文章

2016.8.07 对象基础

写在前面:今天我将发表函数基础.对象基础.this.new.封装.封装例子  这几篇个人理解文章.最好能一口气看完,并自己写下,相信会对想要理解函数和对象的朋友们会有一些帮助. 目录:对象前言.自定义对象.对象for-in(对象没有length属性) 对象前言: 对象的作用: 对象可以帮助我们封装一些数据,方便我们在程序中的传输或是控制, 第二个,对象可以帮助我们描述一些事物 一个是程序中,比如 Math, Array, function 二个是现实生中的事物: 笔记本,汽车,人,学生或是老师

J2SE基础:1.类和对象基础

什么是对象 在Java语言,所有的人,事物或者模块都是一个对象. 相同的对象具有一些相同的特性. 狗,猫,蛇3个对象(动物的对象) 苹果,梨,桔子3个对象(水果的对象) 什么是类 可以将现实生活中的对象经过抽象 这种抽象数据类型称为类. 动物类(Animal) 水果类(Fruit) 类和对象的关系 类是对象的模板(抽象化表示),对象是类的实例化(具体化的展现) 类的组成结构 Java是纯面向对象(除了8种基本数据类型) 而对象是从类产生的.因此类是组成Java程序最基本也是最核心的 元素. 变量

类和对象基础题

一.           类和对象基础题 1.编写一个Java应用程序,该程序中有3个类:Ladder.Circle和主类A.具体要求如下:Ladder类具有类型为double的上底.下底.高.面积属性,具有返回面积的功能,包括一个构造方法对上底.下底.高进行初始化.Circle类具有类型为double的半径.周长和面积属性,具有返回周长.面积的功能,包括一个构造方法对半径进行初始化.主类A用来测试类Ladder和类Circle的功能. 2.按要求编写Java应用程序: (1)编写西游记人物类(

ExtJS教程(2)--- Javascript类和对象基础知识

Javascript中的类其实就是一个function 如下面定义一个Person类 //定义一个类 function Person(){ this.name = 'jaune'; this.age = 18; } //创建一个对象 var person1 = new Person(); console.log(person1); /* * 控制台打出以下内容 * Person {name: "jaune", age: 18} */ 上面是一个简单的定义类及创建类的方法 //定义一个带

Java基于对象基础 基于对象和面向对象的区别(转)

Java基于对象基础 基于对象和面向对象的区别 JavaScript设计者想把javascript语言设计成基于对象(object-based)的语言,他想把这个与面向对象(object-oriented)语言区分开来.但是实际上,可以将基于对象看作是面向对象. 原型对象和类的区别 在JavaScript中没有类这一可以使用关键字,当然保留字不算.所以它有自己对类这种封装结构的实现,这和Java,c++还是有很大区别的.但是我们还是能将原型对象(prototype object)看做是类,它们的

PHP 面向对对象基础(接口,类)

介绍PHP面向对象的基础知识 1. 接口的定义interface ,类定义class,类支持abstract和final修饰符,abstract修饰为抽象类,抽象类 不支持直接实例化,final修饰的类/方法不能被继承/方法重写.2. 接口的实现通过implements,类继承extends interface IShape{ function draw_core(); }; class PathShape implements IShape{ public function draw_core

oracle表和对象基础维护笔记

一 oracle表和对象基础维护笔记 1.1 常见概念 1.2 创建表 1.3 表常见字段 1.4 增加或删除字段 1.5 更新字段 1.6 重命名表 1.7 改变表存储表空间和存储参数 1.8 删除表 1.9 表注释 1.10 分区表的管理 1.11 常用数据字典 二 约束 2.1 非空约束 2.2 主键约束 2.3 唯一性约束 2.4 外键约束 2.5 约束管理 三 索引 3.2 创建索引 3.3 改变索引存储参数 3.4 重建索引 3.5 索引碎片整理 3.6 删除索引 3.7 数据字典

JavaScript学习笔记——对象基础

javascript对象基础 一.名词解释: 1.基于对象 一切皆对象,以对象的概念来编程. 2.面向对象编程(oop Object oriented programming) A.对象 就是人们要研究的任何事物,不仅能表示具体事物,还能表示抽象的规则,计划或事件. 属性的无序集合,每个属性可以存一个值(原始值,对象,函数) B.对象的属性和行为 属性:用数据值来描述他的状态 行为:用来改变对象行为的方法 C.类 具有相同或相似的性质的对象的抽象就是类.对象的抽象,就是类,类的具体化(实例化)

Python - 面对对象(基础)

目录 Python - 面对对象(基础) 一. 概述 二. 创建类和对象 三. 面向对象三大特征 封装 继承 多态 Python - 面对对象(基础) 一. 概述 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数进行分类和封装,让开发"更快更好更强..." 面向过程编程(Object Oriented Programming,OOP,面向对象程序设计) 最易被初学者接受,其往往用一长段代码来实现指定功能,开发

关于C#--面相对象基础总结

A1 10.1号,祖国生日时候,我开始痛下决心决心以后搞软件,一副苦大仇深的样子,想把<Head first C#>看完.期间挫折丛丛,最大的错误在于想把这本书快速看完,忽视了效率 ,终于快看完了,才知道没有做笔记,理解不透彻,有的地方甚至模糊.明白:好的学习方法是最大的效率.急于求进度,往往导致,结果自己不能接受,遇到问题,不去解决,只会更加纠结.做完,在床上,入睡前,随手捡一本书翻翻<大话设计模式>,瞬间我如痴如醉,很多模糊的概念也能理顺了,花了一上午,把一些C#一些概念重新梳