ES6/JavaScript使用技巧分享_javascript技巧

韦小宝
Freigeben: 2017-12-15 14:32:23
Original
1244 Leute haben es durchsucht

本篇文章主要给大家讲解了ES6/JavaScript使用技巧,对JavaScript感兴趣的朋友或者还在学习JavaScript的同学们参考一下吧。

在编写JavaScript代码的时候存在的一些方法和技巧,虽然有时候条条大路都通向罗马,但是也许总会有那么一条最短的路径可走。本文将一些都知道却不怎么用的小技巧分享给大家

一些小技巧

1.new Set()

数组的去重,在'潜意识'里面感觉就应该去循环然后对比去重,其实在ES6中新增提供了新的数据结构Set,用他可以轻松去重数组,比如:


let arr = [1,1, 2, 2, 3, 3]; let set = new Set(arr); // let newArr = Array.from(set); // Array.from方法可以将 Set 结构转为数组。 console.log(newArr); // [1, 2, 3]
Nach dem Login kopieren


2.Object.assign()

也是ES6中提供的对象的扩展方法,其可以用于对象的合并拷贝,像之前对象合并也是很繁琐,但是现在很easy麽,比如:


let obj1 = {a: 1}; let obj2 = {b: 2}; let obj3 = Object.assign({}, obj1, obj2); console.log(obj3); // {a: 1, b: 2}
Nach dem Login kopieren


3.map()

map方法用于遍历数组,有返回值,可以对数组的每一项进行操作并生成一个新的数组,有些时候可以代替for和forEach循环,简化代码,比如:


let arr3 = [1, 2, 3, 4, 5]; let newArr3 = arr3.map((e, i) => e * 10); // 给数组每一项乘以10 console.log(newArr3); // [10, 20, 30, 40, 50]
Nach dem Login kopieren


4.filter()

filter方法同样用于遍历数组,顾名思义,就是过滤数组,在每一项元素后面触发一个回调函数,通过判断,保留或移除当前项,最后返回一个新的数组,比如:


let arr4 = [1, 2, 3, 4, 5]; let newArr4 = arr4.filter((e, i) => e % 2 === 0); // 取模,过滤余数不为0的数 console.log(newArr4); // [2,4]
Nach dem Login kopieren



5.some()

some方法用于遍历数组,在每一项元素后面触发一个回调函数,只要一个满足条件就返回true,否则返回false,类似于 || 比较,比如:


let arr5 = [{result: true}, {result: false}]; let newArr5 = arr5.some((e, i) => e.result); // 只要一个为true,即为true console.log(newArr5); // true
Nach dem Login kopieren


6.every() //与5相反的

every方法用于遍历数组,在每一项元素后面触发一个回调函数,只要一个不满足条件就返回false,否则返回true,类似于 &&比较,比如:


let arr6 = [{result: true}, {result: false}]; let newArr6 = arr6.every((e, i) => e.result); // 只要一个为false,即为false console.log(newArr6); // false
Nach dem Login kopieren


7.三元运算

该运算符应该大家都比较熟悉,在默写情况下可以简化if else的写法,比如:


let e = true, f = ''; if (e) { f = 'aaa'; } else { f = 'bbb'; } // 等同于 f = e ? 'aaa' : 'bbb';
Nach dem Login kopieren



8.~~运算符

~符号用在JavaScript中有按位取反的作用,~~即是取反两次,而位运算的操作值要求是整数,其结果也是整数,所以经过位运算的都会自动变成整数,可以巧妙的去掉小数部分,类似于parseInt,比如:


let a = 1.23; let b = -1.23; console.log(~~a); // 1 console.log(~~b); // -1
Nach dem Login kopieren



结语

本文只列出了JavaScript语法中比较常见的几点能够提升速度的方法,希望大家在巧学过程中达到巧用知识的效果。

相关推荐:

浅谈es6 javascript的map数据结构_javascript技巧

详解如何利用ES6实现单例模式及其应用

JavaScript ES6中关于module语法的详解

Das obige ist der detaillierte Inhalt vonES6/JavaScript使用技巧分享_javascript技巧. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!