DEV Community


Posted on

JS Objects: adding & updating key value pairs

Hello lovely devs, recently I was working on an algorithm. The task was to take a nested array and keep track of how many times an element appears and keep count.

Here is an array of arrays that we will be using to create a data obj to show an example of how to add and update key vlues

const listOfStrings = [
Enter fullscreen mode Exit fullscreen mode

Our goal is to have a JavaScript Object that looks something like this

Enter fullscreen mode Exit fullscreen mode

the first step that I think is simpler to do is since we have an array of arrays, we can us a js method and flatten them.

let stringData = listOfStrings.flat()
// --> ["n","a","s","h","l","o","o","k","s","h","o","t"]
Enter fullscreen mode Exit fullscreen mode

Now that we have that done, we can create a loop and have conditionals to determine if we already encountered a letter or not. If we did then we add one to the count.

const objCountforStringArrays = () =>{
  let stringData = listOfStrings.flat()

  let stringDataCount = {}

  for(let i = 0; i < stringData.length; i++){
      // updating value for key stringData[i] by 1
      stringDataCount[stringData[i]]++ ;
      // adding a new key/value in the obj
      stringDataCount[stringData[i]] = 1;
  return stringDataCount
Enter fullscreen mode Exit fullscreen mode

I hope this made sense, let me know if there is anything that needs extra clarification. Byee!!

Discussion (0)