2015-03-10——简析javascript对象
对于构造函数,它是Function对象的一个实例,可以定义自己的静态成员
先实例化出对象,后执行function中内部代码
静态成员:
var abc = function () {}; //既是一个实例,也是一个构造函数
abc.a = '1'; //静态属性
abc.b = function() {}; //静态方法
原型中的公有成员: 原型一旦修改,会立刻改变基于它生成的对象和实例
abc.prototype.aaa = function () {};
私有成员,特权成员控制访问 会被带到该构造函数生成的每个实例中,实例越多,占用内存越大
私有成员,就是在另一个函数中定义的变量和函数
function abc () {
this.a = '3';
//私有属性
var b = '4';
//私有方法
function aaa() {
}
}
特权成员(也是公有成员),指在构造函数作用域中,使用this关键字定义的方法。
function abc() {
var a = '3';
var b = function () {};
//特权方法
this.ab = function () {
alert(a);
};
}
两种定义函数的方式
javascript执行之前,浏览器会对window对象下的所有顶级变量进行声明,通过赋值语句实现的函数,声明时不会被立即初始化。
function abc() {} //可以在函数执行之前,立即被初始化,可以在任意位置调用。
var abc = function () {} //脚本执行到该行之前,abc函数并不存在;该函数的调用只能在该赋值语句之后。
this,是一个依赖于使用它的执行环境被解析的关键字。
apply 和 call 仅使用方式上有差别
apply在调整this执行环境,并包装成一个匿名函数特别有用。
function bindFunction(obj, func) {
return function () {
func.apply(obj, arguments);
};
}
异常
try {
} catch (e) {
console.log(e.name);
console.log(e.message);
}
2015-03-10——简析javascript对象的更多相关文章
- javaScript系列 [02]-javaScript对象探析
[02]-javaScript对象探析 题记:多年前,以非常偶然的方式关注了微信公众号“面向对象”,本以为这个公众号主要以分享面向对象编程的干货为主,不料其乃实实在在的猿圈相亲平台.通过查看公开资料, ...
- 2015年10个最佳Web开发JavaScript库
2015年10个最佳Web开发JavaScript库 现在的互联网可谓是无所不有,有大量的JavaScript项目开发工具充斥于网络中.我们可以参考网上的指导来获取构建代码项目的各种必要信息.如果你是 ...
- JavaScript进阶系列03,通过硬编码、工厂模式、构造函数创建JavaScript对象
本篇体验通过硬编码.工厂模式.构造函数来创建JavaScript对象. □ 通过硬编码创建JavaScript对象 当需要创建一个JavaScript对象时,我们可能这样写: var person = ...
- nodejs全局对象简析
Global:全局变量 定时器.控制台输出.事件 模块化相关的一些全局变量 path/url相关的一些全局变量 编码相关的 buffer:缓存(简单介绍) Process:进程(重点解析) 一.Glo ...
- 10 JavaScript对象&类&for循环
JavaScript对象 JavaScript中所有事物都是对象:字符串.数值.数组.函数.数学和正则表达式 JavaScript有些类型可以是字面量而非对象:如字符串.数值.布尔值 JavaScri ...
- DiskGenius注册算法简析
初次接触DiskGenius已经成为遥远的记忆,那个时候还只有DOS版本.后来到Windows版,用它来处理过几个找回丢失分区的案例,方便实用.到现在它的功能越来越强大,成为喜好启动技术和桌面支持人员 ...
- Nutch学习笔记二——抓取过程简析
在上篇学习笔记中http://www.cnblogs.com/huligong1234/p/3464371.html 主要记录Nutch安装及简单运行的过程. 笔记中 通过配置抓取地址http://b ...
- JDK框架简析--java.lang包中的基础类库、基础数据类型
题记 JDK.Java Development Kit. 我们必须先认识到,JDK不过,不过一套Java基础类库而已,是Sun公司开发的基础类库,仅此而已,JDK本身和我们自行书写总结的类库,从技术含 ...
- 深入理解javascript对象系列第二篇——属性操作
× 目录 [1]查询 [2]设置 [3]删除[4]继承 前面的话 对于对象来说,属性操作是绕不开的话题.类似于“增删改查”的基本操作,属性操作分为属性查询.属性设置.属性删除,还包括属性继承.本文是对 ...
随机推荐
- nginx+tomcat多节点部署
在一台机器上想要将一个应用程序部署多个节点,可以通过nginx来实现. 1.将tomcat复制多份,修改tomcat配置文件conf/server.xml,将端口号设置成不一样的 2.将多个tomca ...
- jQuery插件学习笔记
近期在研究jQuery插件,插件编写的目的是给已经有的一系列方法或函数做一个封装,以便在其它地方反复使用,方便后期维护. JQuery除了提供一个简单.有效的方式进行管理元素以及脚本,它还还提供了例外 ...
- ZABBIX监控原理
zabbix实现原理及架构详解 想要用好zabbix进行监控,那么我们首要需要了解下zabbix这个软件的实现原理及它的架构.建议多阅读官方文档. 一.总体上zabbix的整体架构如下图所示: 重 ...
- shell30题之第一题
1.1.1 Shell面试题1:批量生成随机字符文件名案例 使用for循环在/oldboy目录下批量创建10个html文件,其中每个文件需要包含10个随机小写字母加固定字符串oldboy,名称示例如下 ...
- Using a long as ArrayList index in java
http://stackoverflow.com/questions/459643/using-a-long-as-arraylist-index-in-java http://bbs.csdn.ne ...
- 关于pom.xml中的MAVEN出错处理
原因:maven与pom的版本不一致 解决方法: 1.升级maven 插件: help--install..... 2.根据出错的信息,找到没有下载成功的本地仓库目录 ,将目录下的文件删除,再在项目上 ...
- Linux设备驱动程序学习之分配内存
内核为设备驱动提供了一个统一的内存管理接口,所以模块无需涉及分段和分页等问题. 我已经在第一个scull模块中使用了 kmalloc 和 kfree 来分配和释放内存空间. kmalloc 函数内幕 ...
- gcc/g++实战之动态链接库与静态链接库编写
函数库一般分为静态库和动态库两种. 静态库: 是指编译链接时,把库文件的代码全部加入到可执行文件中,因此生成的文件比较大,但在运行时也就不再需要库文件了.其后缀名一般为”.a”. 动态库: 与之相反, ...
- sql case when then else end sql_variant
/****************************************************************************** ** Name: usp_cfg_Get ...
- vmware 虚拟机下 ubuntu 与主机共享锐捷
一直以来.想要学习 linux ,在 vm 虚拟机下安装了 ubuntu 系统. 可是这个系统并不能上网.原因就是 vm 虚拟机的虚拟网卡会和锐捷冲突.锐捷会检測到多网卡,断开网络,所以不得不禁用 v ...