Javascript tips

Aug 5, 04:30 AM

Javascript usage

1: use const when in a for loop (makes more readable
for (const myRow of Object
2: start using querySelector and querySelectorAll
document.querySelectorAll('tag#.id or class').forEach( element =>  { console.log(element); } );
3: when querying for selector, use the data attribute (notice [data-XXX=]):
document.getElementById('mark').querySelectorAll('smart-input[data-zyx="myVal"] input'))
4: use setAttribute() and getAttribute() for data & value in any element
     // stop using  element.dataset.thisDataValue
    // use   element.getAttribute('data-this-data-value');
5: Use Boolean() to test null, zero, blank,etc
if  ( Boolean(myValue) == true ) {

6: to use a variable value for an object tag, enclose the variable name inside of square brackets:

    let myVar = 'mark';
    let newObj = {  [myVar] : 'this value' } ;
7. Destructuring – there is a fast way to extract out an object element:
let  myVar  = thisObj.myVar;
let  {myVar} = thisObj     ;   // same as above but less typing.
8. object mapping:
// Creates an array of objects with unique "name" property values.
let uniqueObjArray = [
    ...new Map(myObjArray.map(  item => {   
                    const { keyToBeSkipped, anotherKeyToSkip, ...remainingItems} = item ; 
                    return  [ JSON.stringify(remainingItems) , remainingItems]  
              })).values(),
];
console.info( uniqueObjArray);
https://yagisanatode.com/get-a-unique-list-of-objects-in-an-array-of-object-in-javascript/
https://plainenglish.io/blog/how-to-get-distinct-values-from-an-array-of-objects-in-javascript
https://www.geeksforgeeks.org/how-to-remove-a-key-from-javascript-object/

9. to manipulate a stylesheet:
const stylesheet = new CSSStyleSheet();  
stylesheet.replaceSync('body { background-color:    orange; }'); 
document.adoptedStyleSheets = [stylesheet];
10. to extract out a value from an object, use object(DOT)find:
const	frequency	 =	values[0]		;								;
const	frequencyListAutoIncr
    =	frequencyListObj.find( item => item.frequency == values[0]).frequencyListAutoIncr	;

11: debounce – see separate article on debounce

12: every() The every() method of Array instances tests whether all elements in the array pass the test implemented by the provided function. It returns a Boolean value.and why it returns true for an empty array

const isBelowThreshold = (currentValue) => currentValue < 40;
const array1 = [1, 30, 39, 29, 10, 13];
console.log(array1.every(isBelowThreshold));
// Expected output: true

99: when leaving a promise, create a fake error then call it:

class ExitEarly extends Error {
    constructor(message) {
        super(message);
        this.name = “ExitEarly”;
    }
}

firstPromise.then(result => {
    if (/* time to exit early for whatever reason */) {
        throw new ExitEarly(‘Exiting after firstPromise’);
    }
    return secondPromise(result);
})
Mark Edwards

,

---

Commenting is closed for this article.

---