title: JavaScript学习记录三 toc: true date: 2018-09-14 23:51:22 --<JavaScript高级程序设计(第2版)>学习笔记 要多查阅MDN Web 文档 面向对象的程序设计 创建对象 工厂模式 工厂模式是软件工程领域广为人知的一种设计模式,这种模式抽象了创建具体对象的过程. 用函数来封装以特定接口创建对象的细节: function createPerson(name, age, job) { var o = new Object; o.na…
javascript一些知识点记录 1.substring,slice,substr的用法 substring 和slice 都有startIndex 和 endIndex(不包括endInex),区别就在于slice取负数; 例如:var str='x123'; slice(-1,-2) -1指的就是3 负-2指的就是2: substring的中的负数,当做零来处理 substring中可以颠倒startIndex 和 endIndex的顺序,它会自动将最小的识别为开始的索引,最大的为结束索引…
Javascript设计模式记录,这个方面确实是没写过,工作中也没有用到js设计模式的地方. prototype与面向对象取舍 使用prototype原型继承和使用面向对象,都可以实现闭包的效果.那么这两个的选择点,就是方法会不会产生多个实例. 例如,我们需要做一个闭包数组,并给他提供一个添加方法. !(function () { //原型继承写法 var Validator = function(){ this.cache = []; }; Validator.prototype.add =…
Javascript入门易,精通难,基本上是共识的一个观点.在这个篇幅里,主要对一些难点进行记录. 鸭子类型 Javascript属于动态类型语言的一种.对变量类型的宽容,给了很大的灵活性.由于无需类型检测,则无需考虑他是否被设计拥有该方法. 鸭子类型通俗说法:如果它走起路来像鸭子,叫起来也是鸭子,那么他就是鸭子 鸭子类型指导我们只关注对象的行为,而不关注对象本身.关注HAS-A 而不是 IS-A. 如下例子,不管什么动物,只要他会duckSinging,并且是方法,就可以加入. var duc…
DOM(文档对象模型)是一个独立的语言,用于操作XML和HTML文档的程序接口(API).在游览器中,主要用来与HTML文档打交道,同样也用在Web程序中获取XML文档,并使用DOM API用来访问文档中的数据.尽管DOM是个与语言无关的API,它在游览器中的接口却是用Javascript实现的.客户端脚本编程大多数的是在和底层文档打交道. DOM的访问和修改是有代价的.打个比方:DOM和js各自为一个岛屿,之间仅有一个收费桥梁连接.每次js访问DOM的时候就相当于途径一次这座桥,并交纳过桥费.…
1.js 异步加载和同步加载 异步加载模式也叫非阻塞模式,浏览器在下载js的同时,同时还会执行后续的页面处理, 在script标签内,用创建一个script元素,并插入到document中,这样就是异步加载js文件了 //以前的一般建议是把<script>放在页面末尾</body>之前,这样尽可能减少这种阻塞行为,而先让页面展示出来. (function (){ var script=document.createElement('script'); script.type='te…
JavaScript算法与数据结构知识点记录 zhanweifu…
用于记录C#知识要点. 参考:CLR via C#.C#并发编程.MSDN.百度 记录方式:读每本书,先看一遍,然后第二遍的时候,写笔记. CLR:公共语言运行时(Common Language Runtime)是一个可由多种编程语言(VB.F#等)使用的公共语言运行库. 托管模块:编译源码会生成托管模块,他是标准的PE文件.包含:PE32头.CLR头.IL中间语言. 元数据:CLR除了生成IL外,还会生成元数据.元数据总与包含IL代码的文件相关联. 程序集:是一个或多个模块/资源的逻辑性分组.…
Javascript多线程引擎(三) 完成对ECMAScript-262 3rd规范的阅读后, 列出了如下的限制条件 1. 去除正则表达式( 语法识别先不编写) 2. 去除对Function Declaration的支持, 且把Function Expression 替代 FD 在运行到具体的代码的时候才进行变量声明如: var a; var a = 1; function a(){}; 当读取到如上的语句的时候, 直接根据上下文的环境进行PutValue操作 3. 去除lable, with…
JavaScript知识点(一)包括 数据类型.表达式和运算符.语句.对象.数组. 一.数据类型 1) js中6种数据类型:弱类型特性 5种原始类型:number(数字).string(字符串).boolean(布尔值).null .undefined 1种对象类型:object对象(函数function 数组array 日期Date等) 2)数字转换字符串可以的+"",字符串转换数字可以-0 例:var num = 32; num = "this is a string&q…