{"id":202,"date":"2020-02-15T03:24:00","date_gmt":"2020-02-15T03:24:00","guid":{"rendered":""},"modified":"2024-09-13T15:04:52","modified_gmt":"2024-09-13T15:04:52","slug":"javascript-tutorial-series-exceptions","status":"publish","type":"post","link":"https:\/\/zofxare.com\/zofxare\/blog\/2020\/02\/15\/javascript-tutorial-series-exceptions\/","title":{"rendered":"JavaScript Tutorial Series &#8211; Exceptions"},"content":{"rendered":"<p>In JavaScript, errors can be caught using exception handling. Exception handling will prevent an application from crashing and not being able to recover. Exception handling is a much cleaner way than the old fashioned way of setting up your own error codes, passing them around and doing comparisons.<br \/>\nException handling is implemented using try catch blocks. The try statement encloses a block of code to run. The catch captures runtime errors that occurred within the code block. Captures contain code to handle what to do when errors occur. Finally blocks are optional and contain a block of code that always runs after the try\/catch, whether or not an error occurred. Throw statements are custom errors sent from a block of code to the block of code that called it. The first try\/catch encountered in the calling chain will handle the error. <br \/>\nThe throw statement can throw a string, number, boolean or object.<br \/>\nThe throw statement can be used as follows:<\/p>\n<pre><code>\nfunction addNumbers(a, b) {\n  if (typeof a != 'number') {\n    throw 'Not a number';\n  }\n  if (typeof b != 'number') {\n    throw 'Not a number';\n  }\n\n  return a + b;\n}\n\ntry {\n  let sum = addNumbers(7, 'abc');\n  console.log('sum: ' + sum);\n} catch (error) {\n  console.log('Error: ' + error.message);\n}\n<\/pre>\n<p><\/code><\/p>\n<p>\nThe error variable in the catch statement is an object with name and message properties. <\/p>\n<p>\n<strong>Implementation:<\/strong><\/br><\/br><\/p>\n<p>Inside the modules\/Weather.js file created in the <a href=\"https:\/\/zofxare.com\/zofxare\/blog\/2020\/01\/18\/javascript-tutorial-series-objects\/\" target=\"_blank\" rel=\"noopener\">JavaScript objects tutorial<\/a>, add the following lines that are in bold:<\/p>\n<p><\/p>\n<pre><code>\nclass Weather {\n\n    \/\/ Constructor\n    constructor() {\n    };\n\n    getLocation() {\n        let url = 'https:\/\/ipinfo.io\/json';\n        let options = {\n            mode : 'cors'\n        };\n\n        fetch(url, options)\n        .then(response => response.json());    \n    };\n  \n<strong>\n    static convertKelvinToCelsius(kelvin) {\n        if (typeof kelvin !== 'number') {\n            throw 'Kelvin value is not a number';\n        }\n        return Math.round(kelvin - 273);\n      }\n    \n      static convertCelsiusToFahrenheit(celsius) {\n        if (typeof celsius !== 'number') {\n            throw 'Celsius value is not a number';\n        }\n        return Math.round((celsius * (9\/5)) + 32);\n      };\n    \n      static convertFahrenheitToKelvin(fahrenheit) {\n        if (typeof fahrenheit !== 'number') {\n            throw 'Fahrenheit value is not a number';\n        }\n        return Math.round(((5\/9) * (fahrenheit - 32)) + 273);\n      };\n\n<\/strong>\n}\n\n<strong>\nexport default Weather;\n<\/strong>\n\n<\/code><\/pre>\n<p>\nThis adds 3 functions that verify the input parameter is a number before performing the conversion calculations. If the value is not a number, an exception is thrown using the throw statement.<\/p>\n<p>Next, inside the javascript_tutorial.js file created in the <a href=\"https:\/\/zofxare.com\/zofxare\/blog\/2019\/12\/27\/javascript-tutorial-series-set-up\/\" target=\"_blank\" rel=\"noopener\">JavaScript set up tutorial<\/a>, add the following lines that are in bold:<\/p>\n<pre><code>\n\/\/ JavaScript Tutorial\n\n\/*\n * This file will add JavaScript\n * to a website.\n *\/\n<strong>\nimport Weather from \".\/modules\/Weather.js\";\n<\/strong>\n\n(function() {\n  let doc = document;\n  let defaultLocation = [-86.7816, 36.1627]; \/\/ longitude, latitude\n\n<strong>\n  function setWeather(data) {\n    if (data) {\n      let temp = Math.round(data.main.temp);\n      try {\n        let fahrenheit = Weather.convertCelsiusToFahrenheit(temp - 273);\n        console.log(\"Fahrenheit temperature: \" + fahrenheit);\n      } catch (error) {\n        console.log(\"Error setting weather: \" + error.message);\n      }\n    }\n  }\n<\/strong>\n\n  function init() {\n    let locationStr = \"\";\n    for (let i = 0, num = defaultLocation.length; i < num; i++) {\n      locationStr += defaultLocation[i];\n      if (i === 0) {\n        locationStr += \", \";\n      }\n    }\n\n    console.log(\"Setting weather for location: \" + locationStr);\n<strong>\n    setWeather({ main: { temp: 30 } });\n<\/strong>\n  }\n\n  init();\n})();\n<\/code><\/pre>\n<p>\nThe new lines create a function called setWeather that converts the input value to fahrenheight. Exception handling is added in case the conversion function throws an error.<\/p>\n<p>\nIn the index.html file, edit the script included at the bottom of the file to read:<\/p>\n<pre><code>\n    &lt;script src=\"js\/javascript_tutorial.js\" type=\"module\"&gt;&lt;\/script&gt;\n<\/code><\/pre>\n<p>\nThis will allow the javascript_tutorial.js file to import the Weather class. Modules will be explained in a future post.<\/p>\n<p>\nThe JavaScript tutorial series starts with <a href=\"https:\/\/zofxare.com\/zofxare\/blog\/2019\/12\/27\/javascript-tutorial-series-set-up\/\/\" rel=\"noopener noreferrer\" target=\"_blank\">this post<\/a>.<\/p>\n<p>\n(paid links)<\/br><br \/>\n<a href=\"https:\/\/amzn.to\/39aSKtV\" rel=\"noopener\" target=\"_blank\">More JavaScript<\/a><\/br><\/br><\/p>\n<p><iframe frameborder=\"0\" marginheight=\"0\" marginwidth=\"0\" scrolling=\"no\" src=\"\/\/ws-na.amazon-adsystem.com\/widgets\/q?ServiceVersion=20070822&amp;OneJS=1&amp;Operation=GetAdHtml&amp;MarketPlace=US&amp;source=ss&amp;ref=as_ss_li_til&amp;ad_type=product_link&amp;tracking_id=zofxare-20&amp;language=en_US&amp;marketplace=amazon&amp;region=US&amp;placement=144934013X&amp;asins=144934013X&amp;linkId=1c564951ff9e32885fd78e6d3e51cd88&amp;show_border=true&amp;link_opens_in_new_window=true\" style=\"height: 240px; width: 120px;\"><\/iframe><iframe frameborder=\"0\" marginheight=\"0\" marginwidth=\"0\" scrolling=\"no\" src=\"\/\/ws-na.amazon-adsystem.com\/widgets\/q?ServiceVersion=20070822&amp;OneJS=1&amp;Operation=GetAdHtml&amp;MarketPlace=US&amp;source=ss&amp;ref=as_ss_li_til&amp;ad_type=product_link&amp;tracking_id=zofxare-20&amp;language=en_US&amp;marketplace=amazon&amp;region=US&amp;placement=1119366445&amp;asins=1119366445&amp;linkId=dd23c2d87c50139ea87f57684a12c407&amp;show_border=true&amp;link_opens_in_new_window=true\" style=\"height: 240px; width: 120px;\"><\/iframe><iframe frameborder=\"0\" marginheight=\"0\" marginwidth=\"0\" scrolling=\"no\" src=\"\/\/ws-na.amazon-adsystem.com\/widgets\/q?ServiceVersion=20070822&amp;OneJS=1&amp;Operation=GetAdHtml&amp;MarketPlace=US&amp;source=ss&amp;ref=as_ss_li_til&amp;ad_type=product_link&amp;tracking_id=zofxare-20&amp;language=en_US&amp;marketplace=amazon&amp;region=US&amp;placement=0596517742&amp;asins=0596517742&amp;linkId=6d3fc10c6f7129dfd9a699a17a1caa01&amp;show_border=true&amp;link_opens_in_new_window=true\" style=\"height: 240px; width: 120px;\"><\/iframe><iframe frameborder=\"0\" marginheight=\"0\" marginwidth=\"0\" scrolling=\"no\" src=\"\/\/ws-na.amazon-adsystem.com\/widgets\/q?ServiceVersion=20070822&amp;OneJS=1&amp;Operation=GetAdHtml&amp;MarketPlace=US&amp;source=ss&amp;ref=as_ss_li_til&amp;ad_type=product_link&amp;tracking_id=zofxare-20&amp;language=en_US&amp;marketplace=amazon&amp;region=US&amp;placement=1497408180&amp;asins=1497408180&amp;linkId=13300f4284c721f7e5b0da78795da9eb&amp;show_border=true&amp;link_opens_in_new_window=true\" style=\"height: 240px; width: 120px;\"><\/iframe><\/p>\n","protected":false},"excerpt":{"rendered":"<p>In JavaScript, errors can be caught using exception handling. Exception handling will prevent an application from crashing and not being able to recover. Exception handling is a much cleaner way than the old fashioned way of setting up your own error codes, passing them around and doing comparisons. Exception handling is implemented using try catch [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"nf_dc_page":"","om_disable_all_campaigns":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[340,339,341],"tags":[],"class_list":["post-202","post","type-post","status-publish","format-standard","hentry","category-javascript","category-javascript-tutorials","category-tutorials"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>JavaScript Tutorial Series - Exceptions - Zofxare Blog Home<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/zofxare.com\/zofxare\/blog\/2020\/02\/15\/javascript-tutorial-series-exceptions\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"JavaScript Tutorial Series - Exceptions - Zofxare Blog Home\" \/>\n<meta property=\"og:description\" content=\"In JavaScript, errors can be caught using exception handling. Exception handling will prevent an application from crashing and not being able to recover. Exception handling is a much cleaner way than the old fashioned way of setting up your own error codes, passing them around and doing comparisons. Exception handling is implemented using try catch [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/zofxare.com\/zofxare\/blog\/2020\/02\/15\/javascript-tutorial-series-exceptions\/\" \/>\n<meta property=\"og:site_name\" content=\"Zofxare Blog Home\" \/>\n<meta property=\"article:published_time\" content=\"2020-02-15T03:24:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-09-13T15:04:52+00:00\" \/>\n<meta name=\"author\" content=\"adminuser\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"adminuser\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/zofxare.com\\\/zofxare\\\/blog\\\/2020\\\/02\\\/15\\\/javascript-tutorial-series-exceptions\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/zofxare.com\\\/zofxare\\\/blog\\\/2020\\\/02\\\/15\\\/javascript-tutorial-series-exceptions\\\/\"},\"author\":{\"name\":\"adminuser\",\"@id\":\"https:\\\/\\\/zofxare.com\\\/zofxare\\\/blog\\\/#\\\/schema\\\/person\\\/488c98b837076eb349075c14ea0e87d8\"},\"headline\":\"JavaScript Tutorial Series &#8211; Exceptions\",\"datePublished\":\"2020-02-15T03:24:00+00:00\",\"dateModified\":\"2024-09-13T15:04:52+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/zofxare.com\\\/zofxare\\\/blog\\\/2020\\\/02\\\/15\\\/javascript-tutorial-series-exceptions\\\/\"},\"wordCount\":333,\"commentCount\":0,\"articleSection\":[\"javascript\",\"javascript tutorials\",\"tutorials\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/zofxare.com\\\/zofxare\\\/blog\\\/2020\\\/02\\\/15\\\/javascript-tutorial-series-exceptions\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/zofxare.com\\\/zofxare\\\/blog\\\/2020\\\/02\\\/15\\\/javascript-tutorial-series-exceptions\\\/\",\"url\":\"https:\\\/\\\/zofxare.com\\\/zofxare\\\/blog\\\/2020\\\/02\\\/15\\\/javascript-tutorial-series-exceptions\\\/\",\"name\":\"JavaScript Tutorial Series - Exceptions - Zofxare Blog Home\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/zofxare.com\\\/zofxare\\\/blog\\\/#website\"},\"datePublished\":\"2020-02-15T03:24:00+00:00\",\"dateModified\":\"2024-09-13T15:04:52+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/zofxare.com\\\/zofxare\\\/blog\\\/#\\\/schema\\\/person\\\/488c98b837076eb349075c14ea0e87d8\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/zofxare.com\\\/zofxare\\\/blog\\\/2020\\\/02\\\/15\\\/javascript-tutorial-series-exceptions\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/zofxare.com\\\/zofxare\\\/blog\\\/2020\\\/02\\\/15\\\/javascript-tutorial-series-exceptions\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/zofxare.com\\\/zofxare\\\/blog\\\/2020\\\/02\\\/15\\\/javascript-tutorial-series-exceptions\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/zofxare.com\\\/zofxare\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"JavaScript Tutorial Series &#8211; Exceptions\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/zofxare.com\\\/zofxare\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/zofxare.com\\\/zofxare\\\/blog\\\/\",\"name\":\"Zofxare Blog Home\",\"description\":\"The Zofxare blog\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/zofxare.com\\\/zofxare\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/zofxare.com\\\/zofxare\\\/blog\\\/#\\\/schema\\\/person\\\/488c98b837076eb349075c14ea0e87d8\",\"name\":\"adminuser\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c5fe9cf8bb25011247f8063d1c50de6fbdd21be02889559dd151d722f050f037?s=96&d=retro&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c5fe9cf8bb25011247f8063d1c50de6fbdd21be02889559dd151d722f050f037?s=96&d=retro&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c5fe9cf8bb25011247f8063d1c50de6fbdd21be02889559dd151d722f050f037?s=96&d=retro&r=g\",\"caption\":\"adminuser\"},\"sameAs\":[\"https:\\\/\\\/zofxare.com\\\/zofxare\\\/blog\"],\"url\":\"https:\\\/\\\/zofxare.com\\\/zofxare\\\/blog\\\/author\\\/adminuser\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"JavaScript Tutorial Series - Exceptions - Zofxare Blog Home","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/zofxare.com\/zofxare\/blog\/2020\/02\/15\/javascript-tutorial-series-exceptions\/","og_locale":"en_US","og_type":"article","og_title":"JavaScript Tutorial Series - Exceptions - Zofxare Blog Home","og_description":"In JavaScript, errors can be caught using exception handling. Exception handling will prevent an application from crashing and not being able to recover. Exception handling is a much cleaner way than the old fashioned way of setting up your own error codes, passing them around and doing comparisons. Exception handling is implemented using try catch [&hellip;]","og_url":"https:\/\/zofxare.com\/zofxare\/blog\/2020\/02\/15\/javascript-tutorial-series-exceptions\/","og_site_name":"Zofxare Blog Home","article_published_time":"2020-02-15T03:24:00+00:00","article_modified_time":"2024-09-13T15:04:52+00:00","author":"adminuser","twitter_card":"summary_large_image","twitter_misc":{"Written by":"adminuser","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/zofxare.com\/zofxare\/blog\/2020\/02\/15\/javascript-tutorial-series-exceptions\/#article","isPartOf":{"@id":"https:\/\/zofxare.com\/zofxare\/blog\/2020\/02\/15\/javascript-tutorial-series-exceptions\/"},"author":{"name":"adminuser","@id":"https:\/\/zofxare.com\/zofxare\/blog\/#\/schema\/person\/488c98b837076eb349075c14ea0e87d8"},"headline":"JavaScript Tutorial Series &#8211; Exceptions","datePublished":"2020-02-15T03:24:00+00:00","dateModified":"2024-09-13T15:04:52+00:00","mainEntityOfPage":{"@id":"https:\/\/zofxare.com\/zofxare\/blog\/2020\/02\/15\/javascript-tutorial-series-exceptions\/"},"wordCount":333,"commentCount":0,"articleSection":["javascript","javascript tutorials","tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/zofxare.com\/zofxare\/blog\/2020\/02\/15\/javascript-tutorial-series-exceptions\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/zofxare.com\/zofxare\/blog\/2020\/02\/15\/javascript-tutorial-series-exceptions\/","url":"https:\/\/zofxare.com\/zofxare\/blog\/2020\/02\/15\/javascript-tutorial-series-exceptions\/","name":"JavaScript Tutorial Series - Exceptions - Zofxare Blog Home","isPartOf":{"@id":"https:\/\/zofxare.com\/zofxare\/blog\/#website"},"datePublished":"2020-02-15T03:24:00+00:00","dateModified":"2024-09-13T15:04:52+00:00","author":{"@id":"https:\/\/zofxare.com\/zofxare\/blog\/#\/schema\/person\/488c98b837076eb349075c14ea0e87d8"},"breadcrumb":{"@id":"https:\/\/zofxare.com\/zofxare\/blog\/2020\/02\/15\/javascript-tutorial-series-exceptions\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/zofxare.com\/zofxare\/blog\/2020\/02\/15\/javascript-tutorial-series-exceptions\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/zofxare.com\/zofxare\/blog\/2020\/02\/15\/javascript-tutorial-series-exceptions\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/zofxare.com\/zofxare\/blog\/"},{"@type":"ListItem","position":2,"name":"JavaScript Tutorial Series &#8211; Exceptions"}]},{"@type":"WebSite","@id":"https:\/\/zofxare.com\/zofxare\/blog\/#website","url":"https:\/\/zofxare.com\/zofxare\/blog\/","name":"Zofxare Blog Home","description":"The Zofxare blog","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/zofxare.com\/zofxare\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/zofxare.com\/zofxare\/blog\/#\/schema\/person\/488c98b837076eb349075c14ea0e87d8","name":"adminuser","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/c5fe9cf8bb25011247f8063d1c50de6fbdd21be02889559dd151d722f050f037?s=96&d=retro&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/c5fe9cf8bb25011247f8063d1c50de6fbdd21be02889559dd151d722f050f037?s=96&d=retro&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c5fe9cf8bb25011247f8063d1c50de6fbdd21be02889559dd151d722f050f037?s=96&d=retro&r=g","caption":"adminuser"},"sameAs":["https:\/\/zofxare.com\/zofxare\/blog"],"url":"https:\/\/zofxare.com\/zofxare\/blog\/author\/adminuser\/"}]}},"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/zofxare.com\/zofxare\/blog\/wp-json\/wp\/v2\/posts\/202","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/zofxare.com\/zofxare\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/zofxare.com\/zofxare\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/zofxare.com\/zofxare\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/zofxare.com\/zofxare\/blog\/wp-json\/wp\/v2\/comments?post=202"}],"version-history":[{"count":2,"href":"https:\/\/zofxare.com\/zofxare\/blog\/wp-json\/wp\/v2\/posts\/202\/revisions"}],"predecessor-version":[{"id":253,"href":"https:\/\/zofxare.com\/zofxare\/blog\/wp-json\/wp\/v2\/posts\/202\/revisions\/253"}],"wp:attachment":[{"href":"https:\/\/zofxare.com\/zofxare\/blog\/wp-json\/wp\/v2\/media?parent=202"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/zofxare.com\/zofxare\/blog\/wp-json\/wp\/v2\/categories?post=202"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/zofxare.com\/zofxare\/blog\/wp-json\/wp\/v2\/tags?post=202"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}