Conceal redundant items within an array without permanently deleting them

Is it feasible to achieve this task?

Consider the following example:

[4, 5, 6, 6, 6, 6]

It is required to hide certain values such as: [4, 5, ***6, 6, 6*** 6]

To hide elements with ***, use:

.style.visibility = "hidden"

Answer №1

It is impossible to conceal array elements in JavaScript.

To remedy this, you can form a fresh array without duplicates or filter while accessing the array.

One approach is to use a Set

const container = document.getElementById("container");
const arr = [1, 2, 3, 3, 3, 3];
const dedup = [...new Set(arr)];

console.log(dedup)

// here all hidden elements are displayed

container.innerHTML = arr.map(item => `<span data-id="${item}" hidden>${item}</span>`).join("")

// and show only the first unique element 

dedup.forEach(unique => document.querySelector(`[data-id="${unique}"]`).hidden = false)
#container span {
  border: 1px solid black;
  padding: 2px;
}
<div id="container"></div>

Similar questions

If you have not found the answer to your question or you are interested in this topic, then look at other similar questions below or use the search

The style from 'http://localhost:2000/cssFile/style.css' was rejected because its MIME type was 'text/html'

Currently, I am attempting to include my style.css file in the home.ejs file being rendered by express.js. However, I keep encountering the following error: Refused to apply style from 'http://localhost:2000/cssFile/style.css' because its MIME t ...

AngularJS makes it easy to retrieve data from a server using the $

I am interested in using Bootstrap datatable with AngularJS. Here is the code I have been working on: https://codepen.io/bafu2203/pen/VzBVmy Upon inspection, you will notice that when attempting to populate the table with data from a $http.get call, the t ...

Instructions on how to submit a form using a button while also clicking on an anchor link simultaneously

I have a form with a button to submit it. Now, I want to pass the same variables to another page in order to insert them into a database. The approach I'm considering is passing the variables using an anchor link with GET parameters. However, I' ...

When you print, transfer HTML tags to a separate page

I need help with writing a report that pulls data from a dynamic database. I added code to force a page break after every second div tag, but since the content is constantly changing, some div tags end up spanning across pages when printed. Is there a way ...

Using a jQuery loop without the need for the each method or callback functions

I am trying to iterate through a jQuery collection without using the each method and callbacks. This is my current code: var found1 = false; $('#Root div.ListItem').each(function( index, d1 ) { if (group == d1.text()){ found1 = true; } } ) ...

Adding and removing controls on Google Maps in real-time

Recently, I encountered an issue with my custom search bar overlapping some controls on my map. Despite adjusting the z-index of these controls, they continued to stay on top. To work around this problem, I thought about hiding the controls during the sear ...

The date format adjustments vary depending on the web browser being used

I have a JavaScript function that displays the date in the browser, but the format changes depending on the browser. For example, when I open my project in Chrome, the format is 4/30/2015, but when I open it in IE, it's displayed as 30 April, 2015. Ho ...

In search of a TypeScript solution for type guarding

I'm encountering challenges with TypeScript type guarding. My goal is to confirm if path[aPath] is an array containing elements of type Type1, and then add to that array. However, even after using Array.isArray() to check whether the value is an array ...

AngularJS has encountered an error due to exceeding the maximum call stack size limit

Utilizing AngularJS and a web API, I am fetching data from an SQL table. I have designed a function that populates input fields with values when a row is selected from an HTML table. However, I encountered an error during debugging when clicking on any row ...

The occurrence of the error "Failed to resolve component" in Vue 3.0.11 seems to be random, particularly when using recursive components

After thoroughly checking all similar questions on this platform, I did not find any relevant solutions. In most cases, the error seems to occur when utilizing components:[comp1,comp2] This is incorrect because the components property should be an object. ...

Is there a way to determine the directory from which a script is being called?

Currently, I have a script specified in my package.json file as follows: "generate": "node generators/index.js". When I run npm run generate, this script is executed. The script generates a copy of a template folder located at the root of my project. Howe ...

Email Template not rendering properly across various platforms

Dealing with a frustrating issue here. I created a template using Foundation's E-mail features and it looks perfect in Chrome's Device mode as well as in MailChimp. However, when testing it in Litmus and sending it to my own email, things start t ...

When scrolling, the selected text does not maintain its correct position

I'm looking to enable my users to search by selecting text. Once they select text, a new button will appear on the right side of the selected text giving them the option to search or not. However, when the user scrolls to the bottom of the page, the p ...

When clicked, you will be redirected to the details page

Currently, I am developing a React JS application that showcases a list of companies fetched from a Node.js/Express server in a table format. When clicking on each row, it triggers a modal to display some details about the company. The modal consists of t ...

I am attempting to monitor the addliquidity event on Uniswap's router02

I am currently attempting to monitor addliquidity events in order to extract data on newly added pairs const Web3 = require('web3'); const NODE_URL = "https://mainnet.infura.io/v3/d3c5832256754c85be86b4c97de2d3d3" const web3 = new We ...

When you're downloading a file in Safari, the filename ends up being displayed as 'unidentified'

I am encountering an issue with the code I implemented that downloads a file in Safari, but the filename appears as 'untitled'. Interestingly, it works fine in other browsers. var saveData = (function () { var base64 = "data:application/mswo ...

Revamp the Bootstrap Form Upload feature

I am looking to redesign the Bootstrap Form Upload field. The main reason behind this is that in Bootstrap, the file upload field is treated as one single component, making it impossible to separate the file upload button from the file upload text. The fi ...

What are some ways to create a one-sided design without being limited by container constraints

How can I create a block on my site where there are no container restrictions on the right, but they are limited on the left? The goal is to have an image pressed against the right edge of the page while keeping the container limits on the left. Here is my ...

Tips for updating data in vue.js

I am currently facing a challenge where I need to use vue.js to edit and update values. While I have successfully implemented the edit functionality to retrieve the values, I am encountering difficulties with updating them. To trigger the update action, ...

Validating forms using Ajax in the Model-View-Controller

I am facing an issue with my Ajax form, where I need to trigger a JavaScript function on failure. The code snippet looks like this: using (Ajax.BeginForm("UpdateStages", new AjaxOptions { HttpMethod = "POST", OnSuccess = "refreshSearchResults(&apo ...