犀牛-6对象

对象:字符串到值得映射;自有的属性;继承的属性

字符串,数字和布尔值:它们不是对象。当引用了它们的属性,js会调用new XXX()转为对象,引用结束,则临时对象(包装对象)会消失。对属性的赋值,会被忽略。也可以显示的包装对象。typeof 包装对象:object。没有实际的意义

通过引用来操作对象

var x={
  name:‘sfp‘
};
var y=x;
x.name=‘wj‘;
console.log(‘y.name:‘+y.name);

属性名为空字符串

var x={
  name:‘s‘,
  ‘‘:‘sfp‘
};
for(var key in x) {
  if(key==‘‘){
    console.log(key+‘:‘+x[key]);  //注意取值的形式
  }
}

属性值可以使getter或setter函数

每个属性都有属性特性:5之前都可写,可枚举(for in可输出),可配置(删除,修改)。

对象的对象特性:prototype,class,extensible flag。

内置对象,宿主对象(htmlelement,也为内置),自定义对象,自有属性,继承属性。

历史原因:属性名为保留字,需加引号;最后一个逗号需要加上。属性名内有空格,连字符,保留字,都需加引号。

  

    

时间: 2024-10-13 15:39:39

犀牛-6对象的相关文章

犀牛书的实例代码:给对象添加freeze, hide, 查询descriptors

/* * Define a properties() method in Object.prototype that returns an * object representing the named properties of the object on which it * is invoked (or representing all own properties of the object, if * invoked with no arguments). The returned o

Rhinoceros v5.9.40609.20145 SR9 Corporate Edition 1CD犀牛建模软件

Rhinoceros v5.9.40609.20145 SR9 Corporate Edition 1CD犀牛建模软件 Rhino提供所有NURBS功能,丰富的辅助工具,如实时渲染.层的控制.对象的显示状态等. Rhino可以定制自己的命令集: 还提供命令行的输入方法,用户可以输入命令的名称和参数. 在渲染方面Rhino提供了材质等较多的控制. Rhino可以输出 许多种格式的文件.可以直接输出NURBS模型到3DMax.Softimage3D等软件中,另外也可以把NURBS转换为多边形组成的物

JavaScript词法作用域与调用对象

关于 Javascript 的函数作用域.调用对象和闭包之间的关系很微妙,关于它们的文章已经有很多,但不知道为什么很多新手都难以理解.我就尝试用比较通俗的语言来表达我自己的理解吧. 作用域 Scope Javascript 中的函数属于词法作用域,也就是说函数在它被定义时的作用域中运行而不是在被执行时的作用域内运行.这是犀牛书上的说法.但"定义时"和"执行(被调用)时"这两个东西有些人搞不清楚.简单来说,一个函数A在"定义时"就是 functio

犀牛书重读笔记(一)

序言 刚刚工作的时候,读了一遍犀牛书和高程,但是对于其中的内容不甚了解,大概的快速过一遍,很多知识知其然不知其所以然.在工作一年之后,重新捡起来在看一遍,实践和理论结合才能获得更好的效果,这次笔记主要是为了再次牢记一些基础知识,加深对于js这种语言的理解.写的并不全,主要是为了自己加深印象. 1.类型,值和变量 在JavaScript中,数据总的会分为两种类型,原始类型与对象类型. 原始类型包括数字.字符串和布尔值,同时,在原始类型中,有两种特殊的类型,null(空)和undefined(未定义

类数组对象 实参对象arguments

先看实参对象arguments 之前对argument有点印象,知道它不是真正的数组,但也可以arguments[0]和arguments.length.今天详细的记录一下. js的默认行为:省略的实参是undefined,多余的实参自动忽略 function a(b,c){ //把类数组对象转为数组 console.log(Array.prototype.slice.call(arguments)); console.log(arguments); console.log('b:'+b+';c

JavaScript 对象详解

1 创建对象的方法 最常见的创建对象方法是通过new调用构造函数,此外还有一个方法就是使用Object.create(),将一个原型对象作为参数传递给Object.create也可以创建一个继承了其属性的新对象.但是和使用new创建对象还有一点差别,那就是构造函数不会被调用.所以如果使用这种方法创建一个foo新对象,其foo.f是undefined的: function Foo(z) { this.f = z; } Foo.prototype.add = function(x, y) { ret

浅谈js之this对象

  this对象真的是有时让我们头疼,我们真是分不清它到底指向哪个作用域,它有时的指向真的是不可思议,它本应该这样指向却那样指向. 虽然有这么句话,this是调用执行当前代码的对象的所有者,也就是谁调用它,它就指向谁,那问题来,如果我们分不清谁调用的它,那怎么办呢? 理论部分: 0X00: js中的圣经红宝书和犀牛书对这部分说的很少,但是很精辟:要真正的深刻理解书上说的,那么你对this就一点也不难,但是像我这种菜鸟怎么可能理解呢??? 红宝书: this引用的是函数据以执行的环境对象,this

通过jQuery Ajax使用FormData对象上传文件

转自:http://www.cnblogs.com/labnizejuly/p/5588444.html FormData对象,是可以使用一系列的键值对来模拟一个完整的表单,然后使用XMLHttpRequest发送这个"表单". <form id="uploadForm" enctype="multipart/form-data"> <input id="file" type="file"

对象序列化和反序列--Hibernate的查询和新增极其相似

Hibernate几个关键字持久化,ORM(关系对象映射)(数据库中关系称作是一张表) 应用在项目中,刘一从写的查询代码,每次都挂掉,想要弄出测试数据,自己想着把查询出来的复杂数据弄到文件里自己要是去造那些复杂数据很麻烦public class Object1 { public static void main(String args[]){ HashMap<String, Object> obj=new HashMap<String,Object>(); obj.put(&quo