JavaScript第二十四篇 高级定时器(下)

数组分块所谓数组分块,就是当你发现某个循环占用了大量时间,同时对于上述两个问题,你的回答都是“否”,那么你就可以使用定时器分割这个循环。思路是结合定时器进行递归调用定时器基本示例如下:setTimeout(function(){ //取出下一个条目并处理 var item = array.shift(); process(item); //若还有条目,再设置

- 阅读全文 -

JavaScript第二十四篇 高级定时器(上)

使用 setTimeout()和 setInterval()创建的定时器可以用于实现有趣且有用的功能。虽然人们对 JavaScript 的定时器存在普遍的误解,认为它们是线程,其实 JavaScript 是运行于单线程的环境中的,而定时器仅仅只是计划代码在未来的某个时间执行。执行时机是不能保证的,因为在页面的生命周期中,不同时间可能有其他代码在控制 JavaScript 进程。在页面下载完后的代码

- 阅读全文 -

JavaScript第二十三篇 技巧篇之对象篇

任何对象都可以被在同一环境中运行的代码修改。开发人员很可能会意外地修改别人的代码,甚至更糟糕地,用不兼容的功能重写原生对象。ECMAScript 5 致力于解决这个问题,可以让开发人员定义防篡改对象(tamper-proof object)。不可扩展对象(第一级别)所有对象都是可以扩展的。也就是说,任何时候都可以向对象中添加属性和方法。示例:// 定义一个对象 var person = { nam

- 阅读全文 -

JavaScript第二十三篇 技巧篇之函数篇(下)

函数篇(下)函数绑定函数绑定要创建一个函数,可以在特定的 this 环境中以指定参数调用另一个函数。为了理解,我们先看一个这样的例子示例:var handler = { message: "Event handled", handleClick: function(event){ alert(this.message); } }; va

- 阅读全文 -

JavaScript第二十三篇 技巧篇之函数篇

函数篇(上)安全的类型检测JavaScript 内置的类型检测机制并非完全可靠。事实上,发生错误否定及错误肯定的情况也不在少数。比如说 typeof操作符吧,由于它有一些无法预知的行为,经常会导致检测数据类型时得到不靠谱的结果。Safari(直至第4版)在对正则表达式应用typeof操作符时会返回"function",因此很难确定某个值到底是不是函数再比如,instanceof 操作符在存在多个全

- 阅读全文 -

Jenkins web自动化部署工具安装

安装jenkins系统centos7wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo然后执行下面的命令rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key然后安装jenkinsyum install

- 阅读全文 -

JavaScript第二十二章 跨域资源共享

什么叫跨域?跨域是指一个域下的文档或脚本试图去请求另一个域下的资源,这里跨域是广义的。广义的跨域:资源跳转: A链接、重定向、表单提交资源嵌入: 、、、等dom标签,还有样式中background:url()、@font-face()等文件外链脚本请求: js发起的ajax请求、dom和js对象的跨域操作等什么是同源策略?同源策略/SOP(Same origin policy)是一种约定,由Net

- 阅读全文 -

JavaScript第二十一章 XMLHttpRequest 2级

FormDataFormData 为序列化表单以及创建与表单格式相同的数据(用于通过 XHR 传输)提供了便利。用法如下:var data = new FormData(); data.append("name", "Nicholas"); 这个 append()方法接收两个参数:键和值,分别对应表单字段的名字和字段中包含的值。创建了 FormData 的实

- 阅读全文 -

JavaScript第二十章 XMLHttpRequest 1级

Ajax 技术的核心是 XMLHttpRequest 对象(简称 XHR),这是由微软首先引入的一个特性,其他浏览器提供商后来都提供了相同的实现。这种技术就是无须刷新页面即可从服务器取得数据,但不一定是 XML 数据。XMLHttpRequest 对象最早是在IE5中被引入的,在 IE 中可能会遇到三种不同版本的 XHR 对象,即 MSXML2.XMLHttp、MSXML2.XMLHttp.3.0

- 阅读全文 -

JavaScript第十九章 JSON

什么是Json:它是一种数据格式,是一种表示结构化数据的格式,不是一种编程语言。语法JSON 的语法可以表示以下三种类型的值。简单值:使用与 JavaScript 相同的语法,可以在 JSON 中表示字符串、数值、布尔值和 null。但 JSON 不支持 JavaScript 中的特殊值 undefined。对象:对象作为一种复杂数据类型,表示的是一组无序的键值对儿。而每个键值对儿中的值可以是简单

- 阅读全文 -