现在很多功能用es5的方法也能实现功能,但es6提供的方法显得更为高效。记录下目前常用的几个方法。

1、字符包含

通过str.includes('a')来判断, 若str中包含a则结果为true,否则为false。

eg:

let str = 'abcd';

console.log(str.includes('a')); // true

console.log(str.includes('f')); // false

此外,支持第二个参数:

console.log(str.includes('d', 1)); // true  从索引号1开始搜索(包括1)

注意:includes()方法区分大小写。

2、字符首位判断

通过str.startsWidth('a')来判断, 若a为str的首字符则结果为true,否则为false。

eg:

let str = 'abcd';

console.log(str.startsWidth('a')); // true

console.log(str.startsWidth('b')); // false

此外,支持第二个参数:

console.log(str.startsWidth('cd', 2)); // true

3、字符末位判断

通过str.endsWith('a')来判断,若a为str的末位字符则结果为true,否则为false。

eg:

let str = 'abcd';

console.log(str.endsWith('d')); // trude

console.log(str.endsWith('b')); // false

此外,支持第二个参数:

console.log(str.endsWith('ab', 2)); // true 参数代表前2个(不包括第2)

4.两个值判断是否相等

传统es5判断相等用“==”(会自动转换数据类型)或“===”(有限制,比如NaN,+0,-0)

es6方法:Object.is

eg:Object.is('a', 'a'); // true

Object.is({}, {}); // false

对比:

+0 === -0 // true

NaN === NaN // false

Object.is(+0, -0) // false

Object.is(NaN, NaN) true

5、数组中查找第一个满足元素(包含)

方法:some()方法会依次执行,当遇到满足条件的返回true,跳出循环。若无满足项,返回false。

Ps:该方法不会改变原始数组,且对空数组不生效。

eg:

var a = [1,3,5,6];

function f () {

return b = 5;

}

console.log(a.some(f)); // true

6、模板字符串(也可用于字符拼接)

传统:

$('#id').append(

'This is <b>' + page.no + '</b>' +

'item in your page' + '<em>' + page.name +

'</em> in it.'

);

es6:

$('#id).append(

This is <b>${page.no}</b> item in your page <em>${page.name}</em> in it.

);

注意:在模板中需要使用反引号,需在前面用反斜杠转译。且模板中的空格和换行都会保留。

大括号中可以是变量或函数方法或者嵌套。

7、数组遍历

方法for of

eg:

var a = ['m', 'n', 'o'];

for (i of a) {

console.log(i); // 输出的是值 m, n, o

}

8、数组去重

eg:

var a = new Set("Hello word");

for (var b of a) {

console.log(b+" ")

}

// H e l o w r d

方法一:

function fn(arr) {

return Array.form(new Set(arr)) // Array.from方法可以将 Set 结构转为数组

}

const items = [1,2,3,4,5,6,7,1,2,1,3,1,2,3];

console.log(fn(items)) // [1,2,3,4,5,6,7]

方法二:

let arr1 = [12,13,23,45,46,48,78,79,45,12,13,23];

let arr = new Set(arr1)

console.log([...arr]) // [ 12, 13, 23, 45, 46, 48, 78, 79 ]

9、常用的并集、交集、差集

eg:

let a = new Set([1, 2, 3]);
let b = new Set([4, 3, 2]);
// 并集
let union = new Set([...a, ...b]);
// Set {1, 2, 3, 4}
// 交集
let intersect = new Set([...a].filter(x => b.has(x)));
// set {2, 3}
// 差集
let difference = new Set([...a].filter(x => !b.has(x)));
// Set {1}
 
未完,待添加。

前端小记6——项目中常用的ES6方法的更多相关文章

  1. VB的一些项目中常用的通用方法-一般用于验证类

    1.VB的一些项目中常用的通用方法: ' 设置校验键盘输入值,数字 Public Function kyd(key As Integer) As Integer Dim mychar mychar = ...

  2. 项目中常用的js方法封装---自留

    1.输入一个值,返回其数据类型 type = para => { return Object.prototype.toString.call(para).slice(8,-1) } 2.冒泡排序 ...

  3. 在项目中常用的JS方法封装

    使用方法简单,只需要放在你的 utils.js 工具文件中,直接export const 加上下面封装方法,在别的文件中使用 {方法1,方法2,方法3...}引用后直接使用即可. 01.输入一个值.返 ...

  4. 项目中常用的js方法(持续更新)

    <script> var utils = { //时间戳转日期(timestamp:时间戳 默认当前时间) dateFormat: function(timestamp = new Dat ...

  5. ES6系列之项目中常用的新特性

    ES6系列之项目中常用的新特性 ES6常用特性 平时项目开发中灵活运用ES6+语法可以让开发者减少很多开发时间,提高工作效率.ES6版本提供了很多新的特性,接下来我列举项目中常用的ES6+的特性: l ...

  6. Android 项目中常用到的第三方组件

    项目中常用到的第三方组件 1 社会化分享ShareSDK-Core-2.5.9.jarShareSDK-QQ-2.5.9.jarShareSDK-QZone-2.5.9.jarShareSDK-Sin ...

  7. 项目中常用js方法整理common.js

    抽空把项目中常用js方法整理成了common.js,都是网上搜集而来的,大家一起分享吧. var h = {}; h.get = function (url, data, ok, error) { $ ...

  8. 记录下项目中常用到的JavaScript/JQuery代码二(大量实例)

    记录下项目中常用到的JavaScript/JQuery代码一(大量实例) 1.input输入框监听变化 <input type="text" style="widt ...

  9. 开发中常用的es6知识

    结合实际开发,开发中常用的es6的知识: 1.新增let和const命令: ES6 新增了let命令,用来声明变量.它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效: cons ...

随机推荐

  1. SQL 日期函数转换

    1.转换函数 与date操作关系最大的就是两个转换函数:to_date(),to_char() to_date() 作用将字符类型按一定格式转化为日期类型: 具体用法:to_date('2004-11 ...

  2. BZOJ 3673 可持久化并查集 by zky && BZOJ 3674 可持久化并查集加强版 可持久化线段树

    既然有了可持久化数组,就有可持久化并查集.. 由于上课讲过说是只能按秩合并(但是我也不确定...),所以就先写了按秩合并,相当于是维护fa[]和rk[] getf就是在这棵树中找,直到找到一个点的fa ...

  3. ACM 大神的经验加技巧(当然不是我的拉——

    大神 犯错合集及需要注意的东西 1.在一个地图求最大面积的类问题中,要注意障碍结点的影响. 2.ll(),表示的是在运算后把括号内强制转化为类型ll,而(ll)表示后面的每个玩意都强制转化为类型ll. ...

  4. HDU6438:Buy and Resell(贪心+数据结构)

    题意 : 给出一些数.你可以从左到右对这些数进行三种操作花费 Ai 买入东西.以 Ai 价格卖出你当前有的东西.或者什么都不做.现在问你可以获取的最大利益是多少 分析:对每一个元素产生的贡献可以先计算 ...

  5. Java集合——List集合

    1.集合框架的作用 在实际开发中,我们经常会对一组相同类型的数据进行统一管理操作.到目前为止,我们可以使用数组结构,链表结构,二叉树结构来实现. 数组的最大问题在于数组中的元素个数是固定的,要实现动态 ...

  6. JAVA多线程之线程池的使用

    合理利用线程池能够带来三个好处. 第一:降低资源消耗.通过重复利用已创建的线程降低线程创建和销毁造成的消耗. 第二:提高响应速度.当任务到达时,任务可以不需要等到线程创建就能立即执行. 第三:提高线程 ...

  7. CXF 发布rest服务

    1.1      什么是rest服务 REST 是一种软件架构模式,只是一种风格,rest服务采用HTTP 做传输协议,REST 对于HTTP 的利用实现精确的资源定位. Rest要求对资源定位更加准 ...

  8. 用命令行的方式将本地项目上传到git

    1.(先进入项目文件夹)通过命令 git init 把这个目录变成git可以管理的仓库 git init 2.把文件添加到版本库中,使用命令 git add .添加到暂存区里面去,不要忘记后面的小数点 ...

  9. cairo-dock天气位置代码

    cairo-dock天气位置代码: 城市: 北京CHXX0008哈尔滨CHXX0046长春CHXX0010沈阳CHXX0119大连CHXX0019天津CHXX0133呼和浩特CHXX0249乌鲁木齐C ...

  10. Java并发(三):实例引出并发应用场景

    前两篇介绍了一些Java并发的基础知识,博主正巧遇到一种需求:查询数据库,根据查询结果集修改数据库记录,但整个流程是做成了一个schedule的,并且查询比较耗时,并且需要每两分钟执行一次,cpu经常 ...