ECMAScript5之Object学习笔记(一)】的更多相关文章

随着IE的逐步追赶,目前到IE11已经能够很好的支持ECMAScript5标准了,其他的现代浏览器像firefox,chrome,opera就更不用说了. 再加上nodejs使得javascript在后台开发中得到施展的舞台,这很自然的激发了我对ECMAScript5相关的特性的求知欲望. 以此展开,写一个ECMAScript5新特性的学习笔记. 先来看看Object Object.create(proto[, propertiesObject]) create方法通过指定的原型对象(proto…
第三部分继续... Object.getOwnPropertyDescriptor(obj, prop) 获取一个对象的属性描述符 根据"Own"这个词我们可以猜到,prop只能是obj的“直接”属性,prototype链上的无效 来几个直观的例子,以作说明: var person = {}, nameDesc, // name descriptor titleDesc, // title descriptor ageDesc; // age descriptor person.nam…
继续第二部分 Object.freeze(obj) 看字面意思就是“把一个对象冻结”. 下面我们来看个简单的例子以作说明: // a person instance var person = { name: 'Andrew', job: 'sales manager' }; // before freeze // existing properties maybe be changed or removed, new properties may be added person.name = '…
<script type="text/javascript"> function forEach(o){ var html =""; for(var i in o){ html += i+"="+o[i]+" "; } console.log(html); console.log(o);} //1//Object.create(proto)//Object.create(proto,descriptors)//使用…
对象:数据和功能的集合 创建对象:new 对象类型名称 e.g.: var o = new Object(); 或 var o = new Object(省略(),不推荐) 或 var o = {}(创建对象字面量)--Object实例 Object类型的每个实例具有Object类型保存的任何属性和方法: constructor:保存着用于创建当前对象的函数,如前面的o对象实例的构造函数就是Object hasOwnProperty(propertyName):检测给定的属性是否存在于当前对象实…
Object.create(proto, [propertiesObject])//创建对象,使用参数一来作为新创建对象的__proto__属性,返回值为在指定原型对象上添加自身属性后的对象 //参数proto:必须,新对象的原型对象,可以是null/Object/函数的prototype属性,创建空对象时需传null //参数[propertiesObject]:可选,添加到自身的可枚举属性,不是添加在原型链上的 Object.create()与new Object()的区别: new Obj…
Object.assign(target, source1, source2, ...)//用于对象的复制合并(同名属性后覆盖前)或拷贝(拷贝自身可枚举属性,不拷贝继承属性或不可枚举属性),将source源对象的可枚举属性合并到target目标对象上并返回新的目标对象 Object.assign拷贝的是属性值,如果源对象的属性值是一个对象或者其他引用类型的话,拷贝的是这个对象的引用,改变目标对象或源对象的属性值时,对应都会改变,实现的是浅拷贝.如果源对象的属性值是基本数据类型的话,改变源对象或者…
学习Object C也有段时间了,学习的过程中涉及到了很多Object C中的关键字,本文总结一下所涉及到的关键字以及基本语法. 1.  #import #import <> 从system目录中查找头文件,不会检查当前目录. #import "" 首先在当前目录中查找,如果未找到,则在Xcode设置的预处理程序搜索路径中查找文件. #import 指令可以防止头文件被重复包含 2. typedef 用于给一个类型定义新名称 或 简化较为复杂的类型声明,可以参考文章<…
上一篇讲到了typedef 关键字的使用,可以参考文章 Object C 学习笔记--typedef用法 .而在c中还有另外一个很重要的关键字#define. 一. #define 简介 在C中利用预处理代码,可以让你的代码变得更加具有可读性,更加符合个人的编码风格,这也是C的强大之处.#define可以实现代码的预处理,代码在编译之前会被提前处理. 二. 常量处理 语法: #define 常量名 产量值 #define 声明主要用于将常量(或字符串)赋予有意义的名字,这个和.NET中的常量co…
在上一章的学习过程中遇到了一个关键字typedef,这个关键字是C语言中的关键字,因为Object C是C的扩展同样也是支持typedef的. 一. 基本作用 typedef是C中的关键字,它的主要作用是给一个数据类型定义一个新的名称,这些类型报告内部数据类型,比如int,char 还有自定义类型struct,enum等. typedef一般有两个作用:(1) 给某种类型顶一个定义比较容易记的名字,相当于别名;(2)简化较为复杂的类型声明. 二. typedef的使用 1. 定义新类型 语法:t…