Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
lwc:programming:javascript [2022/11/15 08:35] John Harrisonlwc:programming:javascript [2025/03/18 13:58] (current) John Harrison
Line 52: Line 52:
   * to see all the event messages flying around: ''monitorEvents(window);''   * to see all the event messages flying around: ''monitorEvents(window);''
   * then to unsee: ''unmonitorEvents(window);''   * then to unsee: ''unmonitorEvents(window);''
 +
 +==== Promises ====
 +Promises are always async and often used to prevent UI blocking when waiting for something like an I/O interface. If a function has a ''.then'' then it is definitely calling a promise (or a "thenable" object but yeah that doesn't happen)
 +=== Creating the promise (producing) ===
 +<code>
 +myPromise = Promise(success, failure) {
 +  // do something that takes some time here
 +  if (succeeded) {
 +    success() { // what to return on success i.e. "3" or "hello"}; // this is not a function. It's just a return value
 +  else
 +    failure() { // what to return on failure }; // this is not a function but only a return value
 +
 +</code>
 +=== Calling or running the promise (consuming) ===
 +== Using .then(onFulfilled, onRejected) ==
 +//this is the less preferred method//
 +<code>
 +myPromise.then(
 +  successFunction(value) { // do stuff here with value which was returned by 'success' above }
 +  failFunction(value) { // do stuff here with value returned by 'failure' above })
 +</code>
 +== Using .catch ==
 +// this is best practice in general //
 +<code>
 +myPromise.then(
 +  successFunction(value) { // do stuff here with value returned by 'success' when declaring promise })
 +  .catch(failFunction(value) { // do stuff here with value returned by 'failure' above. also called if an error in successFunction })
 +</code>
 +==== Arrow Notation ====
 +^ Category ^ Old Skool       ^ Arrow Function          ^
 +| No Parameter    | function fred() = {}     | () => {}       |
 +| One Parameter   | function fred(a) = {} | (a) => {} or a => {} (parens are optional when only 1 argument)|
 +| Two Parameters  | function fred(a,b) = {}     | (a,b) => {}        |
  • lwc/programming/javascript.1668522934.txt.gz
  • Last modified: 2022/11/15 08:35
  • by John Harrison