includes()
includes()
Section titled “includes()”Verifica se um array contém um elemento específico.
Sintaxe
Section titled “Sintaxe”await db.includes(key, searchElement, fromIndex)Parâmetros
Section titled “Parâmetros”key(string): Chave do array no bancosearchElement(any): Elemento a ser procuradofromIndex(number, opcional): Índice para começar a busca
Retorno
Section titled “Retorno”Retorna true se o elemento for encontrado, false caso contrário.
Exemplos
Section titled “Exemplos”Uso Básico
Section titled “Uso Básico”await db.set('frutas', ['apple', 'banana', 'orange']);
const temBanana = await db.includes('frutas', 'banana');console.log(temBanana); // true
const temUva = await db.includes('frutas', 'grape');console.log(temUva); // falseCom fromIndex
Section titled “Com fromIndex”await db.set('numeros', [1, 2, 3, 4, 5]);
// Busca a partir do índice 2const tem3 = await db.includes('numeros', 3, 2);console.log(tem3); // true
// Busca a partir do índice 4const tem2 = await db.includes('numeros', 2, 4);console.log(tem2); // false (2 está no índice 1)Com NaN
Section titled “Com NaN”await db.set('valores', [1, NaN, 3]);
// includes() consegue encontrar NaNconst temNaN = await db.includes('valores', NaN);console.log(temNaN); // trueCom Objetos
Section titled “Com Objetos”const usuarios = [ { id: 1, nome: 'João' }, { id: 2, nome: 'Maria' }];
await db.set('usuarios', usuarios);
// Comparação por referênciaconst usuario = usuarios[0];const temUsuario = await db.includes('usuarios', usuario);console.log(temUsuario); // true
// Objeto com mesmo conteúdo mas referência diferenteconst novoUsuario = { id: 1, nome: 'João' };const temNovo = await db.includes('usuarios', novoUsuario);console.log(temNovo); // falseBusca com Índices Negativos
Section titled “Busca com Índices Negativos”await db.set('letras', ['a', 'b', 'c', 'd', 'e']);
// Busca a partir dos últimos 3 elementosconst temC = await db.includes('letras', 'c', -3);console.log(temC); // true- Usa o algoritmo SameValueZero (similar ao ===, mas NaN é igual a NaN)
- Para objetos, compara por referência
- Índices negativos contam a partir do final do array
- Se a chave não existir, retorna
false - Se o valor não for um array, converte para array antes da verificação