Legend:
- ✏️ method changes
this. - 🔒 method does not change
this.
Array<T>.prototype.*:
concat(...items: Array): T[]🔒 ES3
| -- Two dashes start a one-line comment. | |
| --[[ | |
| Adding two ['s and ]'s makes it a | |
| multi-line comment. | |
| --]] | |
| ---------------------------------------------------- | |
| -- 1. Variables and flow control. | |
| ---------------------------------------------------- |
Regular expressions, ever versatile, will help up locate HTML tags in a string today.
Pattern matching HTML strings serves at least one crucial function in web dev: sanitizing user input. Allowing user-submitted strings opens one's application to significant vulnerability. Supposing, for example, some ne'er-do-well on the internet submitted a comment that includes <script src="[path]/stealYourData.js"></script>. Regular expressions allow us to match HTML tags in a string, because HTML tags conform to a certain pattern:
| import * as React from 'react' | |
| import { createPortal } from 'react-dom' | |
| type FrameProps = React.IframeHTMLAttributes<HTMLIFrameElement> & { | |
| head?: React.ComponentType<any> | |
| children?: React.ReactNode | |
| } | |
| const Frame = React.memo(({head, children, ...iframeProps}: FrameProps)=> { | |
| const node = React.useRef<HTMLIFrameElement>() | |
| const [doc, setDoc] = React.useState<Document>() |