es5

完美清晰掌握ES5构造函数实现类的继承

大城市里の小女人 提交于 2020-01-18 03:00:31
ES5中的类 es5中的类 function Person ( ) { this . name = '张三' ; this . age = 12 ; } var p = new Person ( ) ; console . log ( p . name ) 构造函数和原型链里面增加方法 function Person ( ) { this . name = '李四' ; this . age = 23 ; this . run = function ( ) { console . log ( ` ${ this . name } 运动了~` ) // console.log(this) } } // 在原型链上扩展属性和方法(原型链上的属性会被多个实例共享,构造函数不会) Person . prototype . sex = '男' ; Person . prototype . work = function ( ) { console . log ( `性别: ${ this . sex } ` ) } var p = new Person ( ) ; p . run ( ) ; p . work ( ) 类的静态方法 function Person ( ) { } Person . love = function ( ) { console . log ( '我是类的静态方法

ES6 Class使用

对着背影说爱祢 提交于 2020-01-14 18:28:43
构造函数生成实例的执行过程: 1.当使用了构造函数,并且 new 构造函数(),后台会隐式执行 new Object()创建对象 2.将构造函数的作用域给新对象,(即 new Object()创建出的对象),而函数体内的 this就代表 new Object()出来的对象 3.执行构造函数的代码 4.返回新对象(后台直接返回) 之前创建对象 //函数名和实例化构造名相同且大写(非强制,但这么写有助于区分构造函数和普通函数) function Person(name,age) { this.name = name; this.age=age; } Person.prototype.say = function(){ return "我的名字叫" + this.name+"今年"+this.age+"岁了"; } var obj=new Person("laotie",88);//通过构造函数创建对象,必须使用new 运算符 console.log(obj.say());//我的名字叫laotie今年88岁了 ES6 使用class类创建对象 class Person{//定义了一个名字为Person的类 constructor(name,age){//constructor是一个构造方法,用来接收参数 this.name = name;//this代表的是实例对象 this.age

用babel工具将es6转换成es5

£可爱£侵袭症+ 提交于 2020-01-13 17:49:53
①新建项目:新建一个es6文件夹,es6下有src和dist文件夹,现在我在src下新建一个index.js,里面写一些es6代码,我后面要将src下的es6转到dist中变成es5   ②初始化项目:es6文件夹下打开终端,输入npm init ,一路回车,此时会在src下生成package.json文件 ③安装babel工具(安装的过程中会有报错,不要管它): npm install -g babel-cli npm install --save-dev babel-preset-es2015 babel-cli 安装完后,package.json中会多了devDependencies选项: ④在es6下新建.babelrc文件,并输入以下代码: { "presets": ["es2015"], "plugins": [] } ⑤es6终端下输入转换命令:babel src --out-dir dist ⑥简化转换命令:修改package.json中的别名 现在,只需要如下命令就可以编译了:   npm run build 来源: https://www.cnblogs.com/wuqilang/p/12188038.html

es6入门6--数组拓展运算符,Array.from()基本用法

痞子三分冷 提交于 2020-01-13 15:07:20
本文只是作为ES6入门第九章学习笔记,在整理知识点的同时,会加入部分个人思考与解答,若想知道更详细的介绍,还请阅读阮一峰大神的 ES6入门 一、拓展运算符 ES6中新增了拓展运算(...)三个点,它的作用是将一个 数组 或实现了 Iterator接口的对象/类数组 (nodeList,arguments)转为分隔的参数序列。 console.log(...['echo', '听风是风', '时间跳跃']); //echo 听风是风 时间跳跃 类数组arguments使用拓展运算符: let fn = function () { console.log(...arguments); }; fn(1, 2, 3, 4); //1,2,3,4 数组拓展运算符与函数rest参数的区别: 比较巧的是,其实在ES6入门第八章函数拓展中,也有用三个小点且用于取代arguments的rest参数的rest参数。为了避免混淆两者,我们做个简单区分。 let fn = function (...rest) { rest.forEach(ele => console.log(ele)); }; fn('听风是风', ...[1, 2, 3]); //听风是风 1 2 3 //等同于 fn('听风是风', 1, 2, 3); rest参数作用是取代arguments,用于函数参数上

javascript 详解数组

跟風遠走 提交于 2020-01-12 07:18:03
概念 数组创建 数组读写 数组 VS. 一般对象 相同点 不同点 稀疏数组 数组的length属性 元素增删 数组迭代 二维数组 数组方法 Array.prototype.join Array.prototype.reverse Array.prototype.sort Array.prototype.concat Array.prototype.slice 切片 Array.prototype.splice 胶接 Array.prototype.forEach (ES5) Array.prototype.map (ES5) Array.prototype.filter (ES5) Array.prototype.every (ES5) Array.prototype.some (ES5) Array.prototype.reduce/reduceRight (ES5) Array.prototype.indexOf/lastIndexOf (ES5) Array.isArray (ES5) 字符串和数组 最近在学习数组,发现很多ES5的方法平时很少用到。细节比较多,自己做了大量例子和整理,希望对大家了解JavaScript中的Array有所帮助。 概念 数组是值的有序集合。每个值叫做元素,每个元素在数组中都有数字位置编号,也就是索引。JS中的数组是弱类型的

ES5新增方法

偶尔善良 提交于 2020-01-04 09:23:17
数组方法 forEach()方法:遍历数组 语法 arr.forEach(function(value, index, array) {}) value:数组当前项的值 index:数组当前的索引 array:数组对象本身 var arr = [1, 2, 3]; arr.forEach(function(value, index, array) { console.log('每个数组元素' + value); console.log('每个数组元素索引号' + index); console.log('数组本身' + array); }) 输出 每个数组元素1 每个数组元素索引号0 数组本身1,2,3 每个数组元素2 每个数组元素索引号1 数组本身1,2,3 每个数组元素3 每个数组元素索引号2 数组本身1,2,3 示例 var arr = [1, 2, 3]; var sum = 0; arr.forEach(function(value, index, array) { sum += value; }) console.log(sum);//6 filter()方法:筛选数组 arr.filter(function(value, index, array) {}) 注意:返回一个新数组 value:数组当前项的值 index:数组当前的索引 array:数组对象本身 示例1

javascript 详解数组

依然范特西╮ 提交于 2020-01-04 05:42:45
概念 数组创建 数组读写 数组 VS. 一般对象 相同点 不同点 稀疏数组 数组的length属性 元素增删 数组迭代 二维数组 数组方法 Array.prototype.join Array.prototype.reverse Array.prototype.sort Array.prototype.concat Array.prototype.slice 切片 Array.prototype.splice 胶接 Array.prototype.forEach (ES5) Array.prototype.map (ES5) Array.prototype.filter (ES5) Array.prototype.every (ES5) Array.prototype.some (ES5) Array.prototype.reduce/reduceRight (ES5) Array.prototype.indexOf/lastIndexOf (ES5) Array.isArray (ES5) 字符串和数组 最近在学习数组,发现很多ES5的方法平时很少用到。细节比较多,自己做了大量例子和整理,希望对大家了解JavaScript中的Array有所帮助。 概念 数组是值的有序集合。每个值叫做元素,每个元素在数组中都有数字位置编号,也就是索引。JS中的数组是弱类型的

ES5扩展数组的方法及字符串的操作方法

假装没事ソ 提交于 2019-12-28 10:40:46
一、ES5扩展方法   1.严格模式"use strict"     1)必须加在作用域的开头   2.数组扩展方法     1)indexOf(元素,从哪个下标开始查找)       作用:在数组中查找指定的元素第一次出现的下标位置,如果没有找到,返回-1       扩展:lastIndexOf(元素,从哪个下标开始向前查找)       作用:在数组中从后向前查找指定元素第一次出现的下标位置,如果没有找到,返回-1     2)forEach(function(value,index,array){})遍历数组     3)map(function(value,index,array){return...})遍历数组,返回值:新数组     4)reduce(function(prev,next,index,array){return...})归并     5)filter(function(value,index,array){return...})过滤,返回值:过滤后的新数组     注:以上五种都不会影响原数组     6)Object.keys(obj),Object.values(obj); 1 // 值类型与引用类型 2 let d = 4; 3 const obj = { 4 a : 1, 5 b : 2, 6 c : 3, 7 d, 8 [d] : 5 9 }

升级 Elasticsearch 集群数量实战记录

ⅰ亾dé卋堺 提交于 2019-12-23 04:25:21
搜索引擎 升级 Elasticsearch 集群数量实战记录 现在线上有一个elasticsearch集群搜索服务有三台elasticsearch实例(es1、es2、es3),打算将其升级为5台(增加es4、es5)。这篇文章主要是对整个操作的过程记录,以及出现的问题总结,包括移动数据量所需要的时间。因为,一开始由于不知道线上数据量全部分配完需要多少时间,如果从凌晨开始操作,到早上8点都还没有同步完,这样会影响到白天线上业务的正常使用。 准备阶段 线上es集群使用的是阿里云服务器,copy其中一个镜像。然后更改其elasticsearch.yml配置文件,检查IK插件是否安装成功。按照这个流程,准备两台新的服务器放入阿里云的隔离组,并安装好elasticsearch,测试elasticsearch实例可以正确启动。也做了将这两台服务器构建一个集群的测试。开始升级操作前30分钟,再次检查elasticsearch.yml 配置。主要的修改是: discovery.zen.minimum_master_nodes:3 discovery.zen.ping.unicast.hosts: ["es1_ip", "es2_ip","es3_ip","es4_ip","es5_ip"] 升级操作 关闭es集群shard分配功能。对es1执行: curl -XPUT es1_ip:9200/

JS Array对象的方法总结(ES5 与 ES6) 一

杀马特。学长 韩版系。学妹 提交于 2019-12-22 05:24:19
ES5 数组方法 1.Array.isArray() 方法用来判断一个值是否为数组。它可以弥补 typeof 运算符的不足 2.valueOf() 方法返回数组本身 3.toString() 方法返回数组的字符串形式 4.push() 方法用于在数组的末端添加一个或多个元素,并返回添加新元素后的数组长度。注意,该方法会改变原数组。 5.pop() 方法用于删除数组的最后一个元素,并返回该元素。注意,该方法会改变原数组。 6.join() 方法以参数作为分隔符,将所有数组成员组成一个字符串返回。如果不提供参数,默认用逗号分隔。 7.concat() 方法用于多个数组的合并。它将新数组的成员,添加到原数组成员的后部,然后返回一个新数组,原数组不变。 8.shift() 方法用于删除数组的第一个元素,并返回该元素。注意,该方法会改变原数组。 9.unshift() 方法用于在数组的第一个位置添加元素,并返回添加新元素后的数组长度。注意,该方法会改变原数组。 10.reverse() 方法用于颠倒数组中元素的顺序,返回改变后的数组。注意,该方法将改变原数组。 11.slice() 方法用于提取原数组的一部分,返回一个新数组,原数组不变。 12.splice() 方法用于删除原数组的一部分成员,并可以在被删除的位置添加入新的数组成员,返回值是被删除的元素。注意,该方法会改变原数组。