Categories
JavaScript Answers

How to remove all properties from object except specified key with JavaScript?

Sometimes, we want to remove all properties from object except specified key with JavaScript.

In this article, we’ll look at how to remove all properties from object except specified key with JavaScript.

How to remove all properties from object except specified key with JavaScript?

To remove all properties from object except specified key with JavaScript, we can use some object and array methods.

For instance, we write:

const validKeys = ['a', 'b', 'c'];
const userInput = {
  "a": 1,
  "b": 2,
  "c": 3,
  "d": 4,
  "e": 5
}

const filteredEntries = Object.entries(userInput).filter(([key]) => validKeys.includes(key))
const newUserInput = Object.fromEntries(filteredEntries)
console.log(newUserInput)

to call Object.entries to return an array of key-value pairs in userInput as a nested array.

Then we call filter with a callback to return the key-value pair arrays with key that’s in validKeys.

Next, we call Object.fromEntries with filteredEntries to return the object created from the key-value pair arrays in filteredEntries.

Therefore, newUserInput is:

{
  a: 1,
  b: 2,
  c: 3
}

Conclusion

To remove all properties from object except specified key with JavaScript, we can use some object and array methods.

Categories
JavaScript Answers

How to refresh the screen on browser resize with JavaScript?

Sometimes, we want to refresh the screen on browser resize with JavaScript.

In this article, we’ll look at how to refresh the screen on browser resize with JavaScript.

How to refresh the screen on browser resize with JavaScript?

To refresh the screen on browser resize with JavaScript, we can watch the resize event on the window and call location.reload in the resize handler.

For instance, we write:

window.onresize = () => {
  location.reload();
}

to set window.onresize to a function that runs when we resize the browser window or tab.

In it, we run location.reload to refresh the page.

Therefore, when we resize the window, the page is refreshed.

Conclusion

To refresh the screen on browser resize with JavaScript, we can watch the resize event on the window and call location.reload in the resize handler.

Categories
JavaScript Answers

How to get the start date and end date of current week, with the week start from Monday and end with Sunday, with JavaScript?

Sometimes, we want to get the start date and end date of current week, with the week start from Monday and end with Sunday, with JavaScript.

In this article, we’ll look at how to get the start date and end date of current week, with the week start from Monday and end with Sunday, with JavaScript.

How to get the start date and end date of current week, with the week start from Monday and end with Sunday, with JavaScript?

To get the start date and end date of current week, with the week start from Monday and end with Sunday, with JavaScript, we can use some date methods.

For instance, we write:

const startAndEndOfWeek = (date) => {
  const now = date ? new Date(date) : new Date().setHours(0, 0, 0, 0);
  const monday = new Date(now);
  monday.setDate(monday.getDate() - monday.getDay() + 1);
  const sunday = new Date(now);
  sunday.setDate(sunday.getDate() - sunday.getDay() + 7);
  return [monday, sunday];
}

const d = new Date(2022, 3, 1)
console.log(startAndEndOfWeek(d))

to define the startAndEndOfWeek function that takes a date.

In it, we compute the Monday and Sunday of the week that has the given date.

To do this, we create a copy of date with the Date constructor.

Then we get monday by creating a new date from now.

And then we call setDate with monday.getDate() - monday.getDay() + 1 to set the day of the week of monday to the Monday within the same week as date.

Likewise, we call setDate with sunday.getDate() - sunday.getDay() + 7 to set the day of the week of sunday to the Sunday within the same week as date.

Finally, we return both dates.

As a result, the console log logs  [Mon Mar 28 2022 00:00:00 GMT-0700 (Pacific Daylight Time), Sun Apr 03 2022 00:00:00 GMT-0700 (Pacific Daylight Time)].

Conclusion

To get the start date and end date of current week, with the week start from Monday and end with Sunday, with JavaScript, we can use some date methods.

Categories
JavaScript Answers

How to add an image placeholder with JavaScript?

Sometimes, we want to add an image placeholder with JavaScript.

In this article, we’ll look at how to add an image placeholder with JavaScript.

How to add an image placeholder with JavaScript?

To add an image placeholder with JavaScript, we can handle the img element’s error event.

For instance, we write:

<img src='abc'>

to add an img element.

Then we write:

const img = document.querySelector('img')
img.onerror = (e) => {
  e.target.src = 'https://picsum.photos/200/300'
}

to select the img element with querySelector.

Next, we set the img.onerror property to a function that sets the img’s src property to the placeholder image’s URL.

Therefore, when the image fails to load, onerror will run and set the src attribute to the placeholder image URL.

Conclusion

To add an image placeholder with JavaScript, we can handle the img element’s error event.

Categories
JavaScript Answers

How to get the key and value of an object in JavaScript?

Sometimes, we want to get the key and value of an object in JavaScript.

In this article, we’ll look at how to get the key and value of an object in JavaScript.

How to get the key and value of an object in JavaScript?

To get the key and value of an object in JavaScript, we can use the Object.entries method.

For instance, we write:

const topBrands = [{
  'Adidas': 100
}, {
  'Nike': 50
}];

for (const t of topBrands) {
  for (const [key, val] of Object.entries(t)) {
    console.log(key, val)
  }
}

to loop through the entries of the topBrands array with the for-of loop.

In the loop, we get the key-value entries as an array with Object.entries.

Then we loop through the key-value arrays returned with another for-of loop and log the key and val values.

Therefore, we see:

"Adidas", 100
"Nike", 50

logged.

Conclusion

To get the key and value of an object in JavaScript, we can use the Object.entries method.