Skip to Content
JavaScript 经典实例:第三版
book

JavaScript 经典实例:第三版

by Adam D. Scott, Matthew MacDonald, Shelley Powers
September 2022
Intermediate to advanced
585 pages
8h 17m
Chinese
China Electric Power Press Ltd.
Content preview from JavaScript 经典实例:第三版
128
5
如果需要编写更复杂的条件
find()
findIndex()
法的强大就体现出来了。请看
下述代码,这段代码查找落在指定年份中的第一个日期。
//
记住,
Date
构造函数接受的月份值从
0
开始计数
//
因此,
10
表示第
11
个月,即十一月
const
dates = [
new
Date(2021, 10, 20),
new
Date(2020, 3, 12),
new
Date(2020, 5, 23),
new
Date(2022, 3, 18)];
//
查找落在
2020
年中的第一个日期
const matchingDate = dates.find(date => date.getFullYear() === 2020);
console.log(matchingDate); // 'Sun Apr 12 2020 ...'
使用
indexOf()
就达不到这种效果,因为我们要检查数组元素的一个属性(其实,
indexOf()
方法甚至无法比较两个
Date
对象是否相等,因为该方法只能检查对象引
用是否一致)。
5.14.4
参考
如果你想编写一个函数查找多个结果,可能需要使用
5.9
节介绍的
filter()
数。
箭头句法的进一步说明见
6.2
节。
5.15
删除或替换数组元素
5.15.1
问题
你想查找指定的值在数组中出现的位置,把对应的元素删除或替换掉。
5.15.2
方案
首先,使用
indexOf()
法找到想删除的元素所在的位置。然后,在下面两种方式
中选择一个。
对小型数组来说,最简洁的方案是使用不想要的元素两侧的元素重新构建一个数组。 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

JavaScript Patterns

JavaScript Patterns

Stoyan Stefanov
JavaScript

JavaScript

David Flanagan
JavaScript

JavaScript

T. J. Crowder

Publisher Resources

ISBN: 9787519869601