当前位置:网站首页>ES6 learning notes (5): easy to understand ES6's built-in extension objects
ES6 learning notes (5): easy to understand ES6's built-in extension objects
2020-11-06 20:37:00 【Tell me Zhan to hide】
I shared four articles about ES6 Related technologies , If you want to know more , You can see the following links
《ES6 Learning notes ( One ): Easy to understand object-oriented programming 、 Classes and objects 》
《ES6 Learning notes ( Two ): Teach you how to play with class inheritance and class objects 》
《ES6 Learning notes ( 3、 ... and ): Teach you how to use js Object oriented thinking to achieve tab Column add, delete, modify and search function 》
《ES6 Learning notes ( Four ): Teach you to understand ES6 New syntax for 》
List of articles
Array Extension method of
Extension operator ( Expand grammar )
Extension operators can convert arrays or objects into a comma separated sequence of parameters
// The extension operator splits an array into a comma separated sequence of parameters
let arr = [1, 2, 3]
console.log(...arr) // 1 2 3
Extension operators can be applied to merge arrays
// Extension operators are applied to array merges
let arr1 = [1, 2, 3]
let arr2 = [4, 5, 6]
let arr3 = [...arr1, ...arr2]
console.log(arr3) // [1, 2, 3, 4, 5, 6]
// The second way to merge arrays
let arr1 = [1, 2, 3]
let arr2 = [4, 5, 6]
arr1.push(...arr2)
console.log(arr1) // [1, 2, 3, 4, 5, 6]
The extension operator is used to convert a class array or traversable object into a real array
<div>1</div>
<div>2</div>
<div>3</div>
let oDivs = document.getElementsByTagName('div')
console.log(oDivs) //HTMLCollection(3) [div, div, div]
const arr = [...oDivs];
console.log(arr) //(3) [div, div, div]
Constructor method : Array.from()
Convert an array of classes or traversable objects into a real array
let arrLike = {
'0': 'a',
'1': 'b',
'2': 'c',
length: 3
}
let arr2 = Array.from(arrayLike) //['a', 'b', 'c']
Method can also accept the second parameter , Act like an array map Method , Used to process elements , Put the processed value into the returned array .
let arrLike = {
'0': 1,
'1': 2,
'2': 3,
length: 3
}
let arr2 = Array.from(arrLike, item => item * 2)
console.log(arr2) //(3) [2, 4, 6]
Example method :find()
To find the first qualified member of the array , If no return is found undefined
let arr = [{
id: 1,
name: 'lanfeng'
},
{
id: 2,
name: 'qiuqiu'
}
];
let target = arr.find((item, index) => item.id === 2)
console.log(target) //{id: 2, name: "qiuqiu"}
Example method : findIndex()
Used to find the location of the first eligible array member , If no return is found -1
let arr = [1, 5, 10, 15]
let index = arr.findIndex(value => value > 9)
console.log(index); //2
Example method : includes()
Indicates whether an array contains a given value , Returns a Boolean value
[1, 2, 3].includes(2) // true
[1, 2, 3].includes(4) // false
String Extension method of
Template string
ES6 New ways to create strings , Use the anti boot number to define
The template string can wrap
Function can be called in template string
let name = `zhangsan`
let sayHello = `hello, my name is ${ name}`
console.log(sayHello ) // hello, my name is zhangsan
// The template string can wrap
let result = {
name: 'zhangsan',
age: 20,
sex: ' male '
}
let html=`<div> <span>${ result.name}</span> <span>${ result.age}</span> <span>${ result.sex}</span> </div>`;
console.log(html)
// Function can be called in template string
const sayHello = function() {
return 'hello'
}
let greet = `${ sayHello()}, lanfeng`
console.log(greet) //hello, lanfeng
Example method : startsWith() and endsWith()
startsWith(): Indicates whether the parameter string is in the header of the original string , Returns a Boolean value
endsWith(): Indicates whether the parameter string is at the end of the original string , Returns a Boolean value
let str = 'hello world !'
str.startsWith('hello') // true
str.endsWith('!') //true
Example method :repeat()
repeat Method to repeat the original string n Time , Returns a new string
const str1 = 'x'.repeat(3)
console.log(str1) // xxx
const str2 = 'hello'.repeat(2)
console.log(str2) // hellohello
Set data structure
ES6 Provides a new data structure Set. It's like an array , But the values of the members are unique , There is no repetition value
Set Itself is a constructor , Used to generate Set data structure
Set Function can take an array as an argument , Used to initialize
const set = new Set([1, 2, 3, 4, 4])
console.log(set.size) // 4 Array weight removal
console.log(set) //Set(4) {1, 2, 3, 4}
// Convert to array
console.log([...set]) //[1, 2, 3, 4]
Example method
- add(value): Add a value , return Set Structure itself
- delete(value): Delete a value , Returns a Boolean value , Indicates whether the deletion is successful
- has(value): Returns a Boolean value , Indicates whether the value is
- Set Members of
clear(): Clear all members , no return value
const s = new Set();
s.add(1).add(2).add(3); // towards set Add value to structure
s.delete(2) // Delete set The structure of the 2 value
s.has(1) // Express set Whether there is... In the structure 1 This value Returns a Boolean value
s.clear() // eliminate set All values in the structure
Traverse
Set An instance of a structure is the same as an array , Also have forEach Method , Used to perform some kind of operation on each member , no return value
const set = new Set([a, b, c])
set.forEach(item => {
console.log(item)
})
summary
This article mainly shares ES6 Built in extension object of Array Extension method of 、String Extension method of 、Set Data structure and other aspects of the use of some methods and examples .
版权声明
本文为[Tell me Zhan to hide]所创,转载请带上原文链接,感谢
边栏推荐
- electron 實現檔案下載管理器
- image operating system windows cannot be used on this platform
- StickEngine-架构12-通信协议
- Shh! Is this really good for asynchronous events?
- WeihanLi.Npoi 1.11.0/1.12.0 Release Notes
- Staying up late summarizes the key points of report automation, data visualization and mining, which is different from what you think
- 华为Mate 40 系列搭载HMS有什么亮点?
- [efficiency optimization] Nani? Memory overflow again?! It's time to sum up the wave!!
- Use modelarts quickly, zero base white can also play AI!
- Analysis of query intention recognition
猜你喜欢
Swagger 3.0 brushes the screen every day. Does it really smell good?
大会倒计时|2020 PostgreSQL亚洲大会-中文分论坛议程安排
The dynamic thread pool in Kitty supports Nacos and Apollo multi configuration centers
What is the purchasing supplier system? Solution of purchasing supplier management platform
事务的本质和死锁的原理
Unity性能优化整理
Flink的DataSource三部曲之一:直接API
美团内部讲座|周烜:华东师范大学的数据库系统研究
Look! Internet, e-commerce offline big data analysis best practice! (Internet disk link attached)
GUI engine evaluation index
随机推荐
PHP application docking justswap special development kit【 JustSwap.PHP ]
What are Devops
JNI-Thread中start方法的呼叫與run方法的回撥分析
A brief history of neural networks
2020年第四届中国 BIM (数字建造)经理高峰论坛即将在杭举办
前端未來趨勢之原生API:Web Components
python100例項
MeterSphere开发者手册
How to get started with new HTML5 (2)
Top 5 Chinese cloud manufacturers in 2018: Alibaba cloud, Tencent cloud, AWS, telecom, Unicom
What are the criteria for selecting a cluster server?
How to turn data into assets? Attracting data scientists
仅用六种字符来完成Hello World,你能做到吗?
Markdown tricks
嘉宾专访|2020 PostgreSQL亚洲大会阿里云数据库专场:曾文旌
[Xinge education] poor learning host computer series -- building step 7 Simulation Environment
MongoDB与SQL常用语法对应表
给字节的学姐讲如何准备“系统设计面试”
Named entity recognition in natural language processing: tanford core LP ner (1)
【转发】查看lua中userdata的方法