{"componentChunkName":"component---node-modules-stvad-gatsby-theme-garden-src-templates-roam-page-js","path":"/9f451","result":{"data":{"roamPage":{"title":"웹","childMdx":{"body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {};\n\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\n\nvar Block = makeShortcode(\"Block\");\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"h1\", {\n    \"id\": \"웹\"\n  }, \"\\uC6F9\"), mdx(Block, {\n    id: \"JpGKATcyr\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"\\uC5B4\\uB824\\uC6B4 \\uAC78 \\uBB3B\\uB124\")),\n    mdxType: \"Block\"\n  }));\n}\n;\nMDXContent.isMDXComponent = true;","outboundReferences":[],"inboundReferences":[{"__typename":"Mdx","body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {};\n\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\n\nvar Block = makeShortcode(\"Block\");\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(Block, {\n    id: \"vEpz8ti4-\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"\\uB7F0\\uD0C0\\uC784 \\uB300\\uC2E0 \", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/d986e\",\n      \"title\": \"컴파일러\",\n      \"className\": \" internal-link\"\n    }, \"\\uCEF4\\uD30C\\uC77C\\uB7EC\"), \"\\uB97C \\uD1B5\\uD574 \\uB300\\uBD80\\uBD84\\uC758 \\uC791\\uC5C5\\uC744 \\uCEF4\\uD30C\\uC77C\\uD574 \\uACE0\\uC131\\uB2A5 \\uACBD\\uB7C9 \", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/9f451\",\n      \"title\": \"웹\",\n      \"className\": \" internal-link\"\n    }, \"\\uC6F9\"), \" \\uC560\\uD50C\\uB9AC\\uCF00\\uC774\\uC158\\uC744 \\uAC1C\\uBC1C\\uD558\\uAE30 \\uC704\\uD55C \", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/1d3d1\",\n      \"title\": \"프레임워크\",\n      \"className\": \" internal-link\"\n    }, \"\\uD504\\uB808\\uC784\\uC6CC\\uD06C\"), \"\")),\n    mdxType: \"Block\"\n  }));\n}\n;\nMDXContent.isMDXComponent = true;","parent":{"__typename":"RoamBlock","id":"b06430dc-880e-5288-9129-4136ef6b2bab","string":"런타임 대신 [[컴파일러]]를 통해 대부분의 작업을 컴파일해 고성능 경량 [[웹]] 애플리케이션을 개발하기 위한 [[프레임워크]]","fields":{"parentPage":{"title":"Svelte","fields":{"slug":"/Svelte"}},"slug":"/vEpz8ti4"}}},{"__typename":"Mdx","body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {};\n\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\n\nvar Block = makeShortcode(\"Block\");\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(Block, {\n    id: \"_BDSmI2uj\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"https://hpbn.co/\"\n    }, \"High Performance Browser Networking (O'Reilly)\"), \" \", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/9f451\",\n      \"title\": \"hashtag_웹\",\n      \"className\": \"hashtag internal-link\"\n    }, \"\\uC6F9\"), \" \", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/1a5d7\",\n      \"title\": \"hashtag_성능\",\n      \"className\": \"hashtag internal-link\"\n    }, \"\\uC131\\uB2A5\"), \"\")),\n    mdxType: \"Block\"\n  }, mdx(Block, {\n    id: \"Htry1VkYT\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"\\uC5B8\\uC81C \\uC77D\\uB0D0?\")),\n    mdxType: \"Block\"\n  })));\n}\n;\nMDXContent.isMDXComponent = true;","parent":{"__typename":"RoamBlock","id":"211c29cd-dc53-5823-8c1d-6a9a15baf289","string":"[High Performance Browser Networking (O'Reilly)](https://hpbn.co/) #웹 #성능","fields":{"parentPage":{"title":"July 18th, 2022","fields":{"slug":"/July-18th-2022"}},"slug":"/_BDSmI2uj"}}},{"__typename":"Mdx","body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {};\n\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\n\nvar Block = makeShortcode(\"Block\");\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(Block, {\n    id: \"Oz0xdRy8l\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"\", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/9f451\",\n      \"title\": \"웹\",\n      \"className\": \" internal-link\"\n    }, \"\\uC6F9\"), \"\\uC758 \\uC8FC\\uB3C4\\uAD8C\\uC774 \\uACF5\\uAC1C \\uD45C\\uC900\\uC774 \\uC544\\uB2C8\\uB77C \\uD55C \\uC18C\\uC2A4\\uCF54\\uB4DC \\uBCA0\\uC774\\uC2A4\\uC5D0\\uC11C \\uB098\\uC634\")),\n    mdxType: \"Block\"\n  }, mdx(Block, {\n    id: \"Tv6TxzeB3\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"\\uC774\\uB294 \", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/Linux\",\n      \"title\": \"Linux\",\n      \"className\": \" internal-link\"\n    }, \"Linux\"), \"\\uC758 \\uBC29\\uC2DD\\uACFC \\uC720\\uC0AC\\uD558\\uAE30\\uB3C4 \\uD568\")),\n    mdxType: \"Block\"\n  })));\n}\n;\nMDXContent.isMDXComponent = true;","parent":{"__typename":"RoamBlock","id":"a8fc39a5-0aa8-576d-9749-d6069a128d97","string":"[[웹]]의 주도권이 공개 표준이 아니라 한 소스코드 베이스에서 나옴","fields":{"parentPage":{"title":"June 23rd, 2022","fields":{"slug":"/June-23rd-2022"}},"slug":"/Oz0xdRy8l"}}},{"__typename":"Mdx","body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {};\n\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\n\nvar Block = makeShortcode(\"Block\");\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(Block, {\n    id: \"NM8zOdZHv\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"\", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/9f451\",\n      \"title\": \"웹\",\n      \"className\": \" internal-link\"\n    }, \"\\uC6F9\"), \" API\\uB85C\\uB3C4 \\uAD6C\\uD604\\uC5D0 \\uBB38\\uC81C\\uAC00 \\uC5C6\\uACE0 \\uC4F8 \\uB370\\uB3C4 \\uC5C6\\uC5B4 \\uBCF4\\uC5EC\\uC11C \\uC9C0\\uC6E0\\uB2E4 \\uD568...\")),\n    mdxType: \"Block\"\n  }));\n}\n;\nMDXContent.isMDXComponent = true;","parent":{"__typename":"RoamBlock","id":"f03e5dc2-9e75-5e3c-82fb-f5fa032715b8","string":"[[웹]] API로도 구현에 문제가 없고 쓸 데도 없어 보여서 지웠다 함...","fields":{"parentPage":{"title":"June 17th, 2022","fields":{"slug":"/June-17th-2022"}},"slug":"/NM8zOdZHv"}}},{"__typename":"Mdx","body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {};\n\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\n\nvar Block = makeShortcode(\"Block\");\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(Block, {\n    id: \"5hJrZuULA\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"\", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/24fda\",\n      \"title\": \"실시간\",\n      \"className\": \" internal-link\"\n    }, \"\\uC2E4\\uC2DC\\uAC04\"), \" \", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/9f451\",\n      \"title\": \"웹\",\n      \"className\": \" internal-link\"\n    }, \"\\uC6F9\"), \" \\uC560\\uD50C\\uB9AC\\uCF00\\uC774\\uC158 \\uAC1C\\uBC1C\\uC744 \\uC704\\uD55C \", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/SaaS\",\n      \"title\": \"SaaS\",\n      \"className\": \" internal-link\"\n    }, \"SaaS\"), \"\")),\n    mdxType: \"Block\"\n  }));\n}\n;\nMDXContent.isMDXComponent = true;","parent":{"__typename":"RoamBlock","id":"f59264e5-540b-553e-b697-5cf64e642a7c","string":"[[실시간]] [[웹]] 애플리케이션 개발을 위한 [[SaaS]]","fields":{"parentPage":{"title":"Replicache","fields":{"slug":"/Replicache"}},"slug":"/5hJrZuULA"}}},{"__typename":"Mdx","body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {};\n\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\n\nvar Block = makeShortcode(\"Block\");\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(Block, {\n    id: \"FSFuepnhn\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"\", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/HTML\",\n      \"title\": \"HTML\",\n      \"className\": \" internal-link\"\n    }, \"HTML\"), \", \", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/CSS\",\n      \"title\": \"CSS\",\n      \"className\": \" internal-link\"\n    }, \"CSS\"), \", \", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/6e12b\",\n      \"title\": \"자바스크립트\",\n      \"className\": \" internal-link\"\n    }, \"\\uC790\\uBC14\\uC2A4\\uD06C\\uB9BD\\uD2B8\"), \"\\uB97C \\uBC14\\uD0D5\\uC73C\\uB85C \\uC0C1\\uD638 \\uC791\\uC6A9 \\uAC00\\uB2A5\\uD55C \", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/9f451\",\n      \"title\": \"웹\",\n      \"className\": \" internal-link\"\n    }, \"\\uC6F9\"), \" \\uD398\\uC774\\uC9C0\\uB97C \\uB80C\\uB354\\uB9C1\\uD558\\uB294 \\uC18C\\uD504\\uD2B8\\uC6E8\\uC5B4\\uC758 \\uD1B5\\uCE6D.\")),\n    mdxType: \"Block\"\n  }));\n}\n;\nMDXContent.isMDXComponent = true;","parent":{"__typename":"RoamBlock","id":"ed913451-f41b-5a2d-8d09-944dceec8b1a","string":"[[HTML]], [[CSS]], [[자바스크립트]]를 바탕으로 상호 작용 가능한 [[웹]] 페이지를 렌더링하는 소프트웨어의 통칭.","fields":{"parentPage":{"title":"브라우저 엔진","fields":{"slug":"/3e8cc"}},"slug":"/FSFuepnhn"}}},{"__typename":"Mdx","body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {};\n\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\n\nvar Block = makeShortcode(\"Block\");\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(Block, {\n    id: \"tcddWeWBX\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"\", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/9f451\",\n      \"title\": \"웹\",\n      \"className\": \" internal-link\"\n    }, \"\\uC6F9\"), \"\\uC5D0\\uC11C\\uB3C4 \\uD65C\\uC6A9 \\uAC00\\uB2A5\")),\n    mdxType: \"Block\"\n  }));\n}\n;\nMDXContent.isMDXComponent = true;","parent":{"__typename":"RoamBlock","id":"3613c7f4-8b3c-56c5-9be7-2ce9a72fc4e8","string":"[[웹]]에서도 활용 가능","fields":{"parentPage":{"title":"July 1st, 2022","fields":{"slug":"/July-1st-2022"}},"slug":"/tcddWeWBX"}}},{"__typename":"Mdx","body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {};\n\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\n\nvar Block = makeShortcode(\"Block\");\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(Block, {\n    id: \"UjcmgyV7z\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"\", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/9f451\",\n      \"title\": \"웹\",\n      \"className\": \" internal-link\"\n    }, \"\\uC6F9\"), \" \\uAE30\\uC220\\uC744 \\uD1B5\\uD574 \", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/GUI\",\n      \"title\": \"GUI\",\n      \"className\": \" internal-link\"\n    }, \"GUI\"), \" \\uB370\\uC2A4\\uD06C\\uD0D1 \\uC560\\uD50C\\uB9AC\\uCF00\\uC774\\uC158\\uC744 \\uB9CC\\uB4DC\\uB294 \\uB3C4\\uAD6C\")),\n    mdxType: \"Block\"\n  }));\n}\n;\nMDXContent.isMDXComponent = true;","parent":{"__typename":"RoamBlock","id":"5d4a8446-6ac2-52e6-9fa3-3252d6dfe6c0","string":"[[웹]] 기술을 통해 [[GUI]] 데스크탑 애플리케이션을 만드는 도구","fields":{"parentPage":{"title":"Electron","fields":{"slug":"/Electron"}},"slug":"/UjcmgyV7z"}}},{"__typename":"Mdx","body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {};\n\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\n\nvar Block = makeShortcode(\"Block\");\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(Block, {\n    id: \"5mPS0TB1_\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"\\uBE0C\\uB77C\\uC6B0\\uC800\\uB294 \", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/9f451\",\n      \"title\": \"웹\",\n      \"className\": \" internal-link\"\n    }, \"\\uC6F9\"), \" \\uD398\\uC774\\uC9C0\\uB97C \\uBCF4\\uC5EC\\uC8FC\\uB294 \\uAC83 \\uC678\\uC5D0\\uB3C4 \\uBD81\\uB9C8\\uD06C\\uC758 \\uC800\\uC7A5 \\uBC0F \\uAD00\\uB9AC, \\uAE30\\uAE30 \\uAC04 \\uC5F0\\uB3D9, \\uD655\\uC7A5 \\uAE30\\uB2A5\\uC758 \\uC124\\uCE58 \\uBC0F \\uC6B4\\uC6A9, \\uBE44\\uBC00\\uBC88\\uD638\\uC758 \\uC800\\uC7A5 \\uB4F1 \\uC0AC\\uC6A9\\uC790 \\uD3B8\\uC758\\uB97C \\uC704\\uD55C \\uC5EC\\uB7EC \\uAE30\\uB2A5\\uC744 \\uCD94\\uAC00\\uB85C \\uB2F4\\uB2F9\\uD55C\\uB2E4.\")),\n    mdxType: \"Block\"\n  }));\n}\n;\nMDXContent.isMDXComponent = true;","parent":{"__typename":"RoamBlock","id":"f7604544-38be-5d3e-b255-29f523b0a0b4","string":"브라우저는 [[웹]] 페이지를 보여주는 것 외에도 북마크의 저장 및 관리, 기기 간 연동, 확장 기능의 설치 및 운용, 비밀번호의 저장 등 사용자 편의를 위한 여러 기능을 추가로 담당한다.","fields":{"parentPage":{"title":"브라우저 엔진","fields":{"slug":"/3e8cc"}},"slug":"/5mPS0TB1_"}}},{"__typename":"Mdx","body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {};\n\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\n\nvar Block = makeShortcode(\"Block\");\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(Block, {\n    id: \"SKl9XWiwz\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"2022\\uB144 4\\uC6D4\\uC5D0 \\uB9B4\\uB9AC\\uC988\\uB41C \", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/9f451\",\n      \"title\": \"웹\",\n      \"className\": \" internal-link\"\n    }, \"\\uC6F9\"), \" \\uD53C\\uCCD0 \\uBAA9\\uB85D. Priority Hints\\uB791 hwb \\uC815\\uB3C4\\uB9CC \\uAE30\\uC5B5\\uD574\\uB450\\uBA74 \\uB420\\uB4EF? \", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"https://web.dev/web-platform-04-2022/\"\n    }, \"web.dev/web-platform-0\\u2026\"))),\n    mdxType: \"Block\"\n  }));\n}\n;\nMDXContent.isMDXComponent = true;","parent":{"__typename":"RoamBlock","id":"2b8e33d1-06ca-5ecf-b679-8b0f4347f628","string":"2022년 4월에 릴리즈된 [[웹]] 피쳐 목록. Priority Hints랑 hwb 정도만 기억해두면 될듯? [web.dev/web-platform-0…](https://web.dev/web-platform-04-2022/)","fields":{"parentPage":{"title":"June 7th, 2022","fields":{"slug":"/June-7th-2022"}},"slug":"/SKl9XWiwz"}}},{"__typename":"Mdx","body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {};\n\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\n\nvar Block = makeShortcode(\"Block\");\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(Block, {\n    id: \"xhd-sYszr\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"\\uB2E4\\uB978 \", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/GUI\",\n      \"title\": \"GUI\",\n      \"className\": \" internal-link\"\n    }, \"GUI\"), \" \", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/3c7e5\",\n      \"title\": \"네이티브\",\n      \"className\": \" internal-link\"\n    }, \"\\uB124\\uC774\\uD2F0\\uBE0C\"), \" \\uC560\\uD50C\\uB9AC\\uCF00\\uC774\\uC158\\uC5D0\\uC11C \", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/9f451\",\n      \"title\": \"웹\",\n      \"className\": \" internal-link\"\n    }, \"\\uC6F9\"), \" \\uCEE8\\uD150\\uCE20\\uB97C \\uC784\\uBCA0\\uB529\\uD558\\uAE30 \\uC704\\uD574 \\uC4F0\\uC774\\uB294 \\uB3C4\\uAD6C\\uB97C \\uD241\\uCCD0\\uC11C \\uBD80\\uB974\\uB294 \\uB9D0\")),\n    mdxType: \"Block\"\n  }));\n}\n;\nMDXContent.isMDXComponent = true;","parent":{"__typename":"RoamBlock","id":"77a72735-b199-5260-9f1c-09b2d35997bb","string":"다른 [[GUI]] [[네이티브]] 애플리케이션에서 [[웹]] 컨텐츠를 임베딩하기 위해 쓰이는 도구를 퉁쳐서 부르는 말","fields":{"parentPage":{"title":"WebView","fields":{"slug":"/WebView"}},"slug":"/xhd-sYszr"}}},{"__typename":"Mdx","body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {};\n\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\n\nvar Block = makeShortcode(\"Block\");\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(Block, {\n    id: \"-fz6WQaEK\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"https://github.com/lezhin/accessibility\"\n    }, \"\\uB808\\uC9C4 \\uC6F9 \\uC811\\uADFC\\uC131 \\uAC00\\uC774\\uB4DC\\uB77C\\uC778\"), \" \", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/9f451\",\n      \"title\": \"hashtag_웹\",\n      \"className\": \"hashtag internal-link\"\n    }, \"\\uC6F9\"), \"\")),\n    mdxType: \"Block\"\n  }, mdx(Block, {\n    id: \"C6Sl9CB8N\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"\\uB2F9\\uC7A5 \\uC77D\\uAE30\\uBCF4\\uB2E4\\uB294 \\uB450\\uACE0\\uB450\\uACE0 \\uCC38\\uACE0\\uD558\\uAE30 \\uD6E8\\uC52C \\uC88B\\uC740 \\uC790\\uB8CC\")),\n    mdxType: \"Block\"\n  })));\n}\n;\nMDXContent.isMDXComponent = true;","parent":{"__typename":"RoamBlock","id":"983a9959-beba-5b8b-9fee-47ab7e0f5680","string":"[레진 웹 접근성 가이드라인](https://github.com/lezhin/accessibility) #웹","fields":{"parentPage":{"title":"June 28th, 2022","fields":{"slug":"/June-28th-2022"}},"slug":"/fz6WQaEK"}}},{"__typename":"Mdx","body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {};\n\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\n\nvar Block = makeShortcode(\"Block\");\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(Block, {\n    id: \"eokog98Wj\",\n    content: mdx(React.Fragment, null, mdx(\"p\", null, \"\", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/6e12b\",\n      \"title\": \"자바스크립트\",\n      \"className\": \" internal-link\"\n    }, \"\\uC790\\uBC14\\uC2A4\\uD06C\\uB9BD\\uD2B8\"), \" \\uBC14\\uD0D5\\uC73C\\uB85C \", mdx(\"a\", {\n      parentName: \"p\",\n      \"href\": \"/9f451\",\n      \"title\": \"웹\",\n      \"className\": \" internal-link\"\n    }, \"\\uC6F9\"), \" \\uC0AC\\uC774\\uD2B8\\uB97C \\uB9CC\\uB4DC\\uB294 \\uC5EC\\uB7EC \\uBC29\\uBC95\\uC5D0 \\uB300\\uD574 \\uBD84\\uC11D\")),\n    mdxType: \"Block\"\n  }));\n}\n;\nMDXContent.isMDXComponent = true;","parent":{"__typename":"RoamBlock","id":"75f5a986-a2dc-5191-bfc9-88831620ee6a","string":"[[자바스크립트]] 바탕으로 [[웹]] 사이트를 만드는 여러 방법에 대해 분석","fields":{"parentPage":{"title":"June 17th, 2022","fields":{"slug":"/June-17th-2022"}},"slug":"/eokog98Wj"}}}]},"fields":{"slug":"/9f451"}}},"pageContext":{"id":"84d9f71a-044a-55f1-b7df-dbc4322eb75a"}},"staticQueryHashes":["2131059104","2221750479","2468095761"]}