- 博客(19)
- 收藏
- 关注
原创 自学-jq篇-ajax方法
ajax方法ajax= 异步 JavaScript 和 XML,是一种用于创建快速动态网页的技术。通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。有很多使用 AJAX 的应用程序案例:新浪微博、Google 地图、开心网等等。ajax的核心1、建立XMLHtppResquest对象此
2016-10-16 09:49:38 654
翻译 自学-ES6篇-异步操作和Async函数
异步编程对JavaScript语言太重要。Javascript语言的执行环境是“单线程”的,如果没有异步编程,根本没法用,非卡死不可。ES6诞生以前,异步编程的方法,大概有下面四种。回调函数事件监听发布/订阅Promise 对象回调函数ES6将JavaScript异步编程带入了一个全新的阶段,ES7的Async函数更是提出了异步编程的终极解决
2016-10-14 09:44:03 16371 1
翻译 自学-ES6篇-编程风格
1、块级作用域(1)let取代varES6提出了两个新的声明变量的命令:let和const。其中,let完全可以取代var,因为两者语义相同,而且let没有副作用。'use strict';if (true) { let x = 'hello';}for (let i = 0; i < 10; i++) { console.log(i);}上面代码如果用va
2016-10-11 17:51:33 932
翻译 自学-ES6篇-Class
1、Class基本语法概述JavaScript语言的传统方法是通过构造函数,定义并生成新对象。下面是一个例子。function Point(x, y) { this.x = x; this.y = y;}Point.prototype.toString = function () { return '(' + this.x + ', ' + this.y + ')';
2016-10-11 10:42:15 3465
翻译 自学-ES6篇-Promise对象
1、PromisePromise是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和更强大。它由社区最早提出和实现,ES6将其写进了语言标准,统一了用法,原生提供了Promise对象。所谓Promise,简单说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操作)的结果。从语法上说,Promise是一个对象,从它可以获取异步操作的消息。Promise提
2016-10-10 19:43:40 467
翻译 自学-ES6篇-Iterator和for...of循环
1、Iterator(遍历器)的概念JavaScript原有的表示“集合”的数据结构,主要是数组(Array)和对象(Object),ES6又添加了Map和Set。这样就有了四种数据集合,用户还可以组合使用它们,定义自己的数据结构,比如数组的成员是Map,Map的成员是对象。这样就需要一种统一的接口机制,来处理所有不同的数据结构。遍历器(Iterator)就是这样一种机制。它是
2016-10-09 22:40:58 466
翻译 自学-ES6篇-Set和Map数据结构
1、Set基本用法ES6提供了新的数据结构Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。Set本身是一个构造函数,用来生成Set数据结构。var s = new Set();[2, 3, 5, 4, 5, 2, 2].map(x => s.add(x));for (let i of s) { console.log(i);}// 2 3 5 4
2016-10-09 16:12:03 1108
翻译 自学-ES6篇-Proxy和Reflect
1、Proxy概述Proxy用于修改某些操作的默认行为,等同于在语言层面做出修改,所以属于一种“元编程”(meta programming),即对编程语言进行编程。Proxy可以理解成,在目标对象之前架设一层“拦截”,外界对该对象的访问,都必须先通过这层拦截,因此提供了一种机制,可以对外界的访问进行过滤和改写。Proxy这个词的原意是代理,用在这里表示由它来“代理”某些操作,可
2016-10-09 10:35:56 1376
翻译 自学-ES6篇-Symbol
1、概述ES5的对象属性名都是字符串,这容易造成属性名的冲突。比如,你使用了一个他人提供的对象,但又想为这个对象添加新的方法(mixin模式),新方法的名字就有可能与现有方法产生冲突。如果有一种机制,保证每个属性的名字都是独一无二的就好了,这样就从根本上防止属性名的冲突。这就是ES6引入Symbol的原因。ES6引入了一种新的原始数据类型Symbol,表示独一无二的值。它是JavaSc
2016-10-08 20:44:33 578
原创 自学-js篇-defineProperty方法
一、基本定义TheObject.defineProperty()方法定义了一个新的属性直接在一个对象,或修改现有的属性的对象,并返回该对象。二、语法Object.defineProperty(obj,prop,descriptor)obj:定义的对象属性。prop:属性的名称定义或修改。descriptor:该属性被定义或修改描述符。
2016-10-08 16:13:56 5886
翻译 自学-ES6篇-对象的扩展
1、属性的简洁表示法ES6允许直接写入变量和函数,作为对象的属性和方法。这样的书写更加简洁。var foo = 'bar';var baz = {foo};baz // {foo: "bar"}// 等同于var baz = {foo: foo};上面代码表明,ES6允许在对象之中,只写属性名,不写属性值。这时,属性值等于属性名所代表的变量。下面是另一个例子。
2016-10-07 20:11:10 11601
翻译 自学-ES6篇-函数的扩展
1、函数参数的默认值基本用法在ES6之前,不能直接为函数的参数指定默认值,只能采用变通的方法。function log(x, y) { y = y || 'World'; console.log(x, y);}log('Hello') // Hello Worldlog('Hello', 'China') // Hello Chinalog('Hello', ''
2016-10-07 09:59:56 3517
翻译 自学-ES6篇-数组的扩展
1、Array.from()Array.from方法用于将两类对象转为真正的数组:类似数组的对象(array-like object)和可遍历(iterable)的对象(包括ES6新增的数据结构Set和Map)。下面是一个类似数组的对象,Array.from将它转为真正的数组。let arrayLike = { '0': 'a', '1': 'b', '
2016-10-06 22:48:20 6255
翻译 自学-ES6篇-数值的扩展
1、二进制和八进制表示法ES6提供了二进制和八进制数值的新的写法,分别用前缀0b(或0B)和0o(或0O)表示。0b111110111 === 503 // true0o767 === 503 // true从ES5开始,在严格模式之中,八进制就不再允许使用前缀0表示,ES6进一步明确,要使用前缀0o表示。// 非严格模式(function(){ console.log(0
2016-10-06 18:05:16 3359
翻译 自学-ES6篇-正则的扩展
1、RegExp构造函数在ES5中,RegExp构造函数的参数有两种情况。第一种情况是,参数是字符串,这时第二个参数表示正则表达式的修饰符(flag)。var regex = new RegExp('xyz', 'i');// 等价于var regex = /xyz/i;第二种情况是,参数是一个正则表示式,这时会返回一个原有正则表达式的拷贝。var regex = ne
2016-10-06 13:16:35 3690 1
翻译 自学-ES6篇-变量的解构赋值
ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring)。只要等号两边的模式相同,左边的变量就会被赋予对应的值,这种写法属于“模式匹配”。
2016-10-03 19:41:10 142
翻译 自学-ES6篇-简介
ECMAScript 6.0(以下简称ES6)是JavaScript语言的下一代标准,已经在2015年6月正式发布了。它的目标,是使得JavaScript语言可以用来编写复杂的大型应用程序,成为企业级开发语言。标准的制定者有计划,以后每年发布一次标准,使用年份作为版本。因为ES6的第一个版本是在2015年发布的,所以又称ECMAScript 2015(简称ES2015)。ECMAScrip
2016-10-02 18:59:37 918
翻译 自学-js篇-this关键字
this是JavaScript语言中的关键字。它代表函数运行时,自动生成的一个内部对象,只能在函数内部使用。简单的说this所在的函数是当做哪个对象的方法调用的,则该对象就是this所引用的对象,这在编写面向对象的JavaScript编程中起到重要作用。
2016-10-02 14:21:22 512
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人