您的位置:

JS中includes的多方面阐述

一、基本概念

includes() 方法用来判断一个数组是否包含一个指定的值,如果包含则返回 true,否则返回 false。

    const array1 = [1, 2, 3];

    console.log(array1.includes(2));
    // expected output: true

    const pets = ['cat', 'dog', 'bat'];

    console.log(pets.includes('cat'));
    // expected output: true

    console.log(pets.includes('at'));
    // expected output: false

注意:在接收第二个参数时,表示从该位置开始向后查找,如果有该值则返回 true,否则返回 false。

    const array1 = [1, 2, 3];

    console.log(array1.includes(2, 2));
    // expected output: false

    const pets = ['cat', 'dog', 'bat'];

    console.log(pets.includes('cat', 2));
    // expected output: false

二、查找非NaN元素

includes()方法不会将NaN、undefined、null等非数字元素进行查找,只查找有效元素,因此不会返回false。

    const arr = [NaN, 1, 2, 3, undefined, null];
    const result = arr.includes(NaN);

    console.log(result);
    // expected output: true

三、使用includes检测字符串

String.includes() 方法也可以对字符串进行查找,若找到就返回 true,没找到就返回 false,用法与数组相同。

    const str1 = 'Hello, world!';

    console.log(str1.includes('Hello'));
    // expected output: true

    const pets = 'cat dog bat';

    console.log(pets.includes('at'));
    // expected output: true

    console.log(pets.includes('at', 3));
    // expected output: false

四、使用includes检测对象

需要注意的是,如果使用includes() 方法来检查对象时,仅针对指针地址的匹配,即不是真正的对象比较。只有当两个对象的引用相同时才能够匹配

    const obj1 = { name: 'Tom', age: 18 };
    const obj2 = obj1;
    
    const arr = [obj1];
    console.log(arr.includes(obj2)); // true
    
    const arr2 = [{ name: 'Tom', age: 18 }];
    console.log(arr2.includes({ name: 'Tom', age: 18 })); // false

五、使用includes判断字符串中是否包含特定字符集

    const str1 = 'Hello, world!';
    
    console.log(str1.includes('or', 4)); // false
    console.log(str1.includes('or', 3)); // true

六、检测数组中是否包含重复元素

使用Set对象作为中间元素去掉数组中的重复元素,最后将数组去重后的长度和原数组长度进行比较,即可判断是否含有重复元素。

    const hasDup = (arr) => arr.length !== [...new Set(arr)].length;

    console.log(hasDup([1,2,3,4])); // false
    console.log(hasDup([1,2,3,3,4])); // true

七、小结

includes()是es6引入的新方法之一,用于判断数字、字符串、对象等数据元素是否包含某一元素。通过多个方面的阐述,我们深入了解了它的使用方法,并能够在实际开发中灵活运用。

JS中includes的多方面阐述

2023-05-20
java方法整理笔记(java总结)

2022-11-08
ES6 includes方法完全指南

2023-05-19
htmljs编程笔记(html代码笔记)

本文目录一览: 1、html代码和JS代码有什么区别 2、如何在html中调用js函数 3、JavaScript学习笔记之数组基本操作示例 4、HTML5初学者笔记 5、《web前端笔记7》js字符—

2023-12-08
java学习笔记(java初学笔记)

2022-11-14
重学java笔记,java笔记总结

2022-11-23
js高级程序设计笔记14(js高级程序设计笔记14页)

本文目录一览: 1、JavaScript高级程序设计 该怎么看 2、JavaScript学习笔记之数组基本操作示例 3、JS中有关sort以及return的问题 JavaScript高级程序设计 该怎

2023-12-08
为知笔记私有化部署

2023-05-21
印象笔记记录java学习(Java成长笔记)

2022-11-12
详解JavaScript中的.includes方法

2023-05-19
java笔记,大学java笔记

2022-11-28
计算机操作系统汤小丹的多个方面阐述

2023-05-20
javascript简要笔记,JavaScript读书笔记

2022-11-17
数据库的笔记mysql,数据库管理系统笔记

2022-11-24
java笔记,尚硅谷java笔记

2022-12-01
JS判断包含详解

2023-05-22
达内web前端js笔记(达内jsd)

本文目录一览: 1、web前端里的js技术 2、《web前端笔记7》js字符—获取、查找、遍历、提取、替换方法总结 3、达内web前端开发讲的什么内容 4、2020年自学Web前端要掌握的知识点有哪些

2023-12-08
Javascript Includes使用详解

2023-05-19
运行JS文件的多方面阐述

2023-05-20
mvnw.cmd的多方面阐述

2023-05-16