A minimal table to compare the Espressif's MCU families.
| ESP8266 | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C6 | |
|---|---|---|---|---|---|---|
| Announcement Date | 2014, August | 2016, September | 2019, September | 2020, December |
| const str0 = "3124122"; | |
| const num0 = 9; | |
| const str1 = "3124122"; | |
| const num1 = SafeScript.sub(str1, num0); | |
| const num2 = 55 + num1; | |
| const num3 = 5 + num0; | |
| const num4 = (num3 + 1) + 8; | |
| let num5 = 3; | |
| num5 = SafeScript.add(num5, "3"); |
| const str0 = "3124122"; | |
| const num0 = 9; | |
| const str1 = "3124122"; | |
| const num1 = SafeScript.sub(str1, num0); | |
| const num2 = SafeScript.add(55, num1); | |
| const num3 = SafeScript.add(5, num0); | |
| const num4 = SafeScript.add(SafeScript.add(num3, 1), 8); | |
| let num5 = 3; | |
| num5 = SafeScript.add(num5, "3"); |
| const str0 = "3124122"; | |
| const num0 = 9; | |
| const str1 = "3124122"; | |
| const num1 = str1 - num0; | |
| const num2 = 55 + num1; | |
| const num3 = 5 + num0; | |
| const num4 = (num3 + 1) + 8; | |
| let num5 = 3; | |
| num5 += "3"; |
| let y = 8; | |
| ... | |
| y = SafeScript.add(y, "233"); // SafeScript will throw TypeError exception | |
| ... |
| // network_api.ts | |
| class HttpPythonSiteObject { | |
| ... | |
| } | |
| function get_url_object(url: string): any { | |
| ... | |
| return new HttpPythonSiteObject(); | |
| } |
| let y = 8; | |
| ... | |
| //@ts-ignore | |
| y += "233"; // Ok from TypeScript compiler point of view | |
| ... |
| let y = 8; | |
| ... | |
| y += "233"; // Compilation error in TypeScript | |
| ... |
| let y = 8; | |
| ... | |
| y += "233"; // Possible error behaviour | |
| ... |
| from browser import window, console, document | |
| import javascript | |
| React = window.React | |
| @javascript.extends(React.Component) | |
| class Hello: | |
| def __init__(self, props, children): | |
| javascript.super().__init__(props, children) |