随笔分类 - Javascript
摘要:作用域 作用域指的是变量的适用范围。 1.概念:公用、私有和受保护作用域 在传统的面向对象程序设计中,主要关注于公用和私有作用域。 公用作用域 中的对象属性可以从对象外部访问,即开发者创建对象的实例后,就可使用它的公用属性。 私有作用域 中的属性只能在对象内部访问,即对于外部世界来说,这些属性并不存
阅读全文
摘要:私有变量 任何在函数中定义的变量,都可以认为是私有变量,因为不能在函数外部访问这些变量。 私有变量包括函数的参数,局部变量和在函数内部定义的其他函数。 如果在这个函数内部创建一个闭包,那么闭包通过自己的作用域链也可以访问这些变量。而利用这些变量,就可以创建用于访问私有变量的公有方法。 特权方法: 我
阅读全文
摘要:模仿块级作用域 JavaScript中没有块级作用域,这意为着在块语句中定义的变量,实际上是包含在函数中而非语句中创建的。 下面的这个实例可以看出: function outputNumbers(count){ for (var i=0; i
阅读全文
摘要:理解JavaScript继承(三) 通过把父对象的属性,全部拷贝给子对象,也能实现继承。 7.浅拷贝 但是,这样的拷贝有一个问题。那就是,如果父对象的属性等于数组或另一个对象,那么实际上,子对象获得的只是一个内存地址,而不是真正拷贝,因此存在父对象被篡改的可能。所以,extendCopy()只是拷贝
阅读全文
摘要:理解JavaScript继承(二) 5.寄生式继承 这个实例基于person返回了一个新对象anotherPerson。新对象不仅具有person的所有属性和方法,而且还有自己的sayHi()方法。 缺点 :和构造函数一样,不能做到函数复用而降低效率。 6.寄生组合式继承 前面介绍说组合继承是Jav
阅读全文
摘要:理解JavaScript继承(一) 我们都知道,面向对象的编程语言非常强大,之所以强大,就是其支持继承。在JavaScript中,也支持继承,而且有多种方法实现继承,比如原型链继承,借用构造函数继承,或者把原型链和借用构造函数函数组合在一起的组合继承,还有直接原型式继承,深浅拷贝继承。下面我就一一来
阅读全文
摘要:深入理解原型链 1.原型链 原型链作为实现继承的主要方法:其基本思想是利用原型让一个引用类型继承另一个引用类型的属性和方法。 首先我们得清楚构造函数(constructor),原型对象(prototype)和实例的三者关系。 每一个构造函数都有一个原型对象,原型对象都包含一个指向构造函数的指针,而实
阅读全文
摘要:理解静态方法与动态方法 我们知道,要在一个构造函数,或者叫做引用类型上部署方法,通常有两种做法。 (1)静态方法 静态方法是在构造函数本身上定义的方法,只能通过构造函数本身调用,new出来的对象不能够调用。 (2)动态方法(实例方法) 动态方法,也叫做实例方法,它是通过prototype原型对象添加
阅读全文
摘要:创建对象的模式 1.工厂模式 工厂模式抽象了创建具体对象的过程,使用一个函数,封装以特定接口创建对象的细节。 缺点:无法知道一个对象的类型。 2.构造函数模式 缺点:无法达到函数复用,每实例化一个新对象,就会创建一个新的函数对象。 把函数单独放在外面,每次调用函数时,只是相当于指针调用,但是不符合全
阅读全文
摘要:NPM 使用 npm是随同NodeJS一起安装的包管理工具,通过使用npm命令,可以实现下面这些功能: 允许用户从NPM服务器下载别人编写的第三方包到本地使用。 允许用户从NPM服务器下载并安装别人编写的命令行程序到本地使用。 允许用户将自己编写的包或命令行程序上传到NPM服务器供别人使用。 1.n
阅读全文
摘要:JSON JSON全称JavaScript Object Notation(JavaScript 对象表示法),JSON语法可以有三种类型的值,分别是简单值(字符,数字,布尔值和null),对象和数组。 JSON解析与序列化 JSON对象的两个方法: stringify():把JavaScript对
阅读全文
摘要:同源策略(same origin policy)及三种跨域方法 1.同源策略 含义: 同源是指文档的来源相同,主要包括三个方面 协议 主机 载入文档的URL端口 所以同源策略就是指脚本只能读取和所属文档来源相同的窗口和文档的属性这样一个规定。 同源策略目的 : 一项政策的颁布肯定事出有因,所以同源策
阅读全文
摘要:理解同步,异步和延迟脚本 浏览器加载JavaScript脚本,主要通过``标签完成。正常的网页加载流程是这样的。 1.浏览器一边下载HTML网页,一边开始解析 2.解析过程中,发现<script 标签 3.暂停解析,网页渲染的控制权转交给JavaScript引擎 4.如果<script 标签引用了外
阅读全文
摘要:Ajax实例二:取得新内容 通过点击pre和next按钮,从服务器取得最新内容。 HTML代码 JavaScript代码
阅读全文
摘要:Ajax实例一:利用服务器计算 HTML代码 JavaScript代码 服务器端代码:WebCalculator.php
阅读全文
摘要:理解属性描述对象 1.概述 JavaScript提供了一个内部数据结构,用来描述一个对象的属性的行为,控制它的行为。这被称为“属性描述对象”(attributes object)。每个属性都有自己对应的属性描述对象,保存该属性的一些元信息。 实例: ECMAScript中属性特性又分为两种属性:数据
阅读全文
摘要:Object对象 JavaScript原生提供一个Object对象(注意起首的O是大写),所有其他对象都继承自这个对象。Object本身也是一个构造函数,可以直接通过它来生成新对象。 Object作为构造函数使用时,可以接受一个参数。如果该参数是一个对象,则直接返回这个对象;如果是一个 原始类型的值
阅读全文
摘要:理解JavaScript对象 对象是JavaScript的基本数据类型。对象是一种复合值:将很多值(原始值或者其他对象)聚合在一起。 JavaScript对象不仅可以保持自有的属性,还可以从原型对象继承属性。对象的方法通常是继承的属性。原型式继承是JavaScript的核心特征。 JavaScrip
阅读全文
摘要:跨浏览器的事件处理程序和对象 为了解决各种浏览器的差异问题,往往我们需要能够跨浏览器的程序。很多人会通过使各种的JavaScript库来解决这些问题,当然了,如果要自己编写也可以,通过使用能力检测的方法即可,从而让同一段代码在多数浏览器下一致运行。 创建一个addHandler()方法 创建一个re
阅读全文
摘要:(1)等号(==)和全等号(===) 等号 :等号操作符,在比较两个操作数的相等性前,先会转换操作数( 自动转换 ),然后再比较他们的相等性。 如果一个操作数是布尔值,则在比较相等性之前先将其转换为数值,false转换为0,而true转换为1. 如果一个操作数是字符串,另一个操作数是数值,则在比较相
阅读全文

浙公网安备 33010602011771号