普通对象:由大括号包裹起来的,由零到多个属性名和属性值(键值对)组成的

那什么是属性呢?

属性:描述当前对象特征的,属性名是当前具备这个特征,属性值是这个特征的描述(专业语法,属性名称为键[key],属性值称为值[value],一组属性名和属性值称为一组键值对)

对象的属性名 可以是数字

var obj={
1:12,
true:100,
null:200,
undefined:300,
{}:400
}
obj[1];//
obj['1'];//
obj.1 ; //语法错误
obj[{}]=300 ;// 存储的是[object Object]: 300

当我们存储的属性名不是字符串和数字,浏览器会把这个值转换为字符串(toString转换),然后在进行存储

属性的操作:增删改查

var obj = {

   name:'我是一个名字',
age:10
}
//获取属性名的值 (查)
obj.name //obj的name属性名
obj['name'] //正规的获取方式,一般来说,对象的属性名都是字符串格式的,属性值是任意格式的
//增加和修改

var obj1 = {name:'qqq'};
var obj2 = {name:'www'}; obj1.name = '韩梅梅'; //修改
obj1.sex = 20; //增加属性sex

js对象中属性名是不允许重复的,是唯一的,原来有就是修改,原来没有就是增加

//删除属性
var obj3 = {
name:'jack',
age:18
} delete obj3['name'] ;//彻底删除 再获取为undefined
obj3['age'] = null; //假删除,只是将当前属性的值为空,属性名还在 再获取为null

 数组对象

数组也是对象,并且数组对象的属性名是数字,我们称为数字属性名为当前对象的索引

var ary =[20,30,40];
ary['0'];//
ary[0]'//20
ary.0 ;//Uncaught SyntaxError: Unexpected number,语法错误
ary.length;//2
ary['length'];//2
ary.age=50 ; [20,30,40,age:50]

数组和对象的关系是啥?

数组是对象的一种细分,对象包含数组,对象拥有的数组一样可以拥有

数组对象属中依次递增的数字属性名叫做索引

思考题:

var obj4 = {name:'lilei'};
var name='hanmeimei';
obj4.name;
obj4['name'];
obj4[name];

答案:

obj4.name;//'lilei'
obj4['name'];// 'lilei'
obj4[name];//undefined 分析:'name'和name区别,
'name'是一个字符串的值
name是一个变量,不是值,代表的是它存储的值,这里没有这个name变量,所以是undefined

ECMAScript---object对象类型详解的更多相关文章

  1. 三:python 对象类型详解一:数字(上)

    一:python 的数字类型: a)整数和浮点数 b)复数 c)固定精度的十进制数 d)有理分数 e)集合 f)布尔类型 g)无穷的整数精度 h)各种数字内置函数和模块 二:各种数字类型的详解 1,数 ...

  2. 四:python 对象类型详解一:数字(下)

    一:位操作 除了一般的数学运算,python也支持c语言中的大多数数学表达式.这包括那些把整数当作二进制位串对待的操作.例如,还可以实现位移及布尔操作: >>> x = 1 > ...

  3. 七:python 对象类型详解三:列表

    一:列表简介: 1,列表可以包含任何种类的对象:数字.字符串甚至集合对象类型.列表都是可变对象,它们都支持在原处修改的操作,可以通过指定的偏移量和分片.列表方法调用.删除语句等方法来实现.关键的作用有 ...

  4. 六:python 对象类型详解二:字符串(下)

    一:字符串方法: 方法就是与特定对象相关联在一起的函数.从技术的角度来讲,它们是附属于对象的属性,而这些属性不过是些可调用的函数罢了.Python 首先读取对象方法,然后调用它,传递参数.如果一个方法 ...

  5. JavaScript中的对象类型详解

    To be finished 摘要 1.什么是对象? 2.引用类型和原始类型 3.对象数据属性拥有的特性(Attributes) 4.如何创建对象 a.直接定义 var mango={color:&q ...

  6. 十:python 对象类型详解六:文件

    一:文件 1.简介:内置open 函数会创建一个python 文件对象,可以作为计算机上的一个文件链接.在调用open 之后,可以通过调用返回文件对象的方法来读写相关外部文件.文件对象只是常见文件处理 ...

  7. 九:python 对象类型详解五:元组

    一:元组: 1,简单介绍:元组由简单的对象组构成.元组与列表非常类似,只不过元组不能在原处修改(它们)是不可变的,并且通常写成圆括号中的一系列项.虽然元组不支持任何方法调用,但元组具有列表的大多数属性 ...

  8. 八:python 对象类型详解四:字典

    一:字典通识: 1,字典通过键而不是偏移量来读取: 2,字典是任意对象的无序集合: 3,字典可变长.异构.任意嵌套: 4,字典属于可变映射类型: 5,对象引用表(散列表): 二:实际应用中的字典: 1 ...

  9. 五:python 对象类型详解二:字符串(上)

    一:常量字符串 常量字符串用起来相对简单,也许最复杂的事情就是在代码中有如此多的方法来编写它们. eg:单引号:'spam"m'   , 双引号: “spa'm” , 三引号:‘’‘... ...

随机推荐

  1. 小白开学Asp.Net Core《二》

    小白开学Asp.Net Core<二> ——数据仓储层(Repositroy) 一.历史现象 在后端开发中,数据库操作是最频繁的,每一个开发人员都会接触,甚至不少开发人员每天的工作就是与数 ...

  2. sql注入篇1

    一.前言 学习了感觉很久的渗透,总结一下sql注入,系统整理一下sql注入思路. 二.关于sql注入 所谓SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到 ...

  3. Android入门简介

    GeoQuiz应用是由一个activity和一个布局(layout)组成. activity是Android SDK中Activity类的一个具体实例,负责管理用户与信息屏的交互. 布局定义了一系列用 ...

  4. Linux下gcc编译器的使用

    例:gcc -x -g c helloC -o firstC -x:改变gcc的行为.(注:如果是.c文件则不用加-x) -x c :编译c程序 -x c++ :编译c++程序 -x java :编译 ...

  5. 【iOS】ARC & MRC

    iOS 项目类型,是 ARC 还是 MRC 未完……

  6. feign传输String json串 自动转义 \ 解决方法

    @RequestMapping(value={"/sysOrgRest/getInfoByOrgIds"}, method={org.springframework.web.bin ...

  7. DevOps实施历程-v1.0

    ​    有AF项目的成功案例(DevOps实施历程-半自动化),公司新项目全部依此为模板,实现了从代码到安装的自动化流水线,为此我输出了Jenkins自动化指南.AF项目指南等文档,方便大家查阅和参 ...

  8. (15)ASP.NET Core Web主机(IWebHostBuilder)

    1.前言 ASP.NET Core应用程序可以配置和启动主机(Host).主机负责应用程序启动和生存期管理,配置服务器和请求处理管道.主机还可以设置日志记录.依赖关系注入和配置.而host主机又包括W ...

  9. java多线程基础(二)--java线程各状态关系

    注意只有可运行(就绪态)和运行中(运行态)可以相互转换

  10. springMVC(一) --前端控制器(DispatcherServlet)的作用

        SpringMVC是Spring中的模块,它实现了mvc设计模式的web框架,首先用户发出请求,请求到达SpringMVC的前端控制器(DispatcherServlet),前端控制器根据用户 ...