Baseline Widely available
String.raw()
éçã¡ã½ããã¯ããã³ãã¬ã¼ããªãã©ã«ã®ããã®ã¿ã°é¢æ°ã§ãããã®é¢æ°ã¯ Python ã®æååãªãã©ã«ã® r
æ¥é è¾ã C# ã®æååãªãã©ã«ã® @
æ¥é è¾ã«ä¼¼ã¦ãã¾ãããã®é¢æ°ã¯ããã³ãã¬ã¼ããªãã©ã«ã®çã®æååå½¢å¼ãåå¾ããããã«ä½¿ç¨ããã¾ããã¤ã¾ããç½®æï¼${foo}
ãªã©ï¼ã¯è¡ããã¾ãããã¨ã¹ã±ã¼ãï¼\n
ãªã©ï¼ã¯å®è¡ããã¾ããã
// Create a variable that uses a Windows
// path without escaping the backslashes:
const filePath = String.raw`C:\Development\profile\aboutme.html`;
console.log(`The file was uploaded from: ${filePath}`);
// Expected output: "The file was uploaded from: C:\Development\profile\aboutme.html"
æ§æ
String.raw(strings)
String.raw(strings, sub1)
String.raw(strings, sub1, sub2)
String.raw(strings, sub1, sub2, /* â¦, */ subN)
String.raw`templateString`
弿°
strings
æ´å½¢å¼ã®ãã³ãã¬ã¼ããªãã©ã«é
åãªãã¸ã§ã¯ãããã¨ãã° { raw: ['foo', 'bar', 'baz'] }
ãªã©ã§ããæååã®é
å風ãªãã¸ã§ã¯ããå¤ã¨ãã¦æã¤ raw
ããããã£ãæã£ã¦ãããªãã¸ã§ã¯ãã§ããã¹ãã§ãã
sub1
, â¦, subN
ç½®æãããå¤ãå ¥ãã¾ãã
templateString
ãã³ãã¬ã¼ããªãã©ã«ã§ãããªãã·ã§ã³ã§ã§ç½®ææåå (${...}
) ãå«ã¿ã¾ãã
æå®ããããã³ãã¬ã¼ããªãã©ã«ã®çã®æååå½¢å¼ã§ãã
ä¾å¤TypeError
第 1 弿°ã« raw
ããããã£ãå«ã¾ãã¦ããªãã£ãããraw
ããããã£ã undefined
ã¾ã㯠null
åºä¼ã£ããããå ´åã«çºçãã¾ãã
ã»ã¨ãã©ã®å ´åãString.raw()
ã¯ãã³ãã¬ã¼ããªãã©ã«ã¨ã¨ãã«ä½¿ç¨ããã¾ããåè¿°ã®æåã®æ§æã¯ãæ»
å¤ã«ä½¿ç¨ããã¾ãããJavaScript ã¨ã³ã¸ã³ãï¼ä»ã®ã¿ã°é¢æ°ã®ããã«ï¼é©åãªå¼æ°ã§å¼ã³åºãããã§ãã
String.raw()
ã¯ãã³ãã¬ã¼ããªãã©ã«ã®å¯ä¸ã®çµã¿è¾¼ã¿ã¿ã°é¢æ°ã§ããæ¢å®ã®ãã³ãã¬ã¼ã颿°ã®ããã«åä½ããé£çµãè¡ãã¾ããé常㮠JavaScript ã³ã¼ãã§åå®è£
ãããã¨ãã§ãã¾ãã
è¦å: String.raw
ãç´æ¥ãèå¥ãã¿ã°ã¨ãã¦ä½¿ç¨ããªãã§ãã ããããã®å®è£
æ¹æ³ã«ã¤ãã¦ã¯èå¥ã¿ã°ã®æ§ç¯ãåç
§ãã¦ãã ããã
String.raw()
ã raw
ããããã£ã« length
ããããã£ããªãããæ£ã§ãªã length
ãæã¤ãªãã¸ã§ã¯ãã§å¼ã³åºãããå ´åãç©ºã®æåå ""
ãè¿ãã¾ãããã substitutions.length < strings.raw.length - 1
ï¼ã¤ã¾ãããã¬ã¼ã¹ãã«ãã¼ãåããã ãã®ç½®æããªã - æ´å½¢å¼ã¿ã°ä»ããã³ãã¬ã¼ããªãã©ã«ã§ã¯èµ·ããããªãï¼å ´åãæ®ãã®ãã¬ã¼ã¹ãã«ãã¼ã¯ç©ºã®æååã§åãããã¾ãã
String.raw`Hi\n${2 + 3}!`;
// 'Hi\\n5!' ã§ãã'Hi' ã®æ¬¡ã®æåã¯
// æ¹è¡æåã§ã¯ãªãã
// '\' ããã³ 'n' 㯠2 ã¤ã®æåã§ãã
String.raw`Hi\u000A!`;
// 'Hi\\u000A!' ã§ããåæ§ã§ãä»åã¯
// \, u, 0, 0, 0, A, ã® 6 æåã§ãã
// ãã¹ã¦ã®ç¨®é¡ã®ã¨ã¹ã±ã¼ãæåã¯ç¡å¹ã§ãããã¯ã¹ã©ãã·ã¥ã
// åºåæååä¸ã«åå¨ãã¾ãã
// æååã® .length ããããã£ã調ã¹ãã¨ç¢ºèªã§ãã¾ãã
const name = "Bob";
String.raw`Hi\n${name}!`;
// 'Hi\\nBob!' ã§ããç½®ãæããå¦çããã¾ãã
String.raw`Hi \${name}!`;
// 'Hi \\${name}!' ã§ãããã«è¨å·ãã¨ã¹ã±ã¼ãããã¾ããè£éã¯è¡ããã¾ããã
èå¥ã¿ã°ã®æ§ç¯
å¤ãã®ãã¼ã«ã¯ãç¹å®ã®ååã§ã¿ã°ä»ãããããªãã©ã«ãç¹å¥æ±ããã¾ãã
// ãã©ã¼ããã¿ã¼ã«ãã£ã¦ã¯ããã®ãªãã©ã«ã®ã³ã³ãã³ãã HTML ã¨ãã¦æ¸å¼åãã
const doc = html`<!DOCTYPE html>
<html lang="en-US">
<head>
<title>Hello</title>
</head>
<body>
<h1>Hello world!</h1>
</body>
</html>
`;
html
ã¿ã°ãç´ æ´ã«å®è£
ããããã«ã¯ã次ã®ããã«ãã¾ãã
ããã¯ãå®éã¯ãä¸è¨ã®ããã«åä½ãã¾ããããããString.raw
㯠"cooked" æååã§ã¯ãªããçã®æååãªãã©ã«ãé£çµããã®ã§ãã¨ã¹ã±ã¼ãã·ã¼ã±ã³ã¹ã¯å¦çããã¾ããã
const doc = html`<canvas>\n</canvas>`;
// "<canvas>\\n</canvas>"
ã¿ã°ãç´ç²ã«ãã¼ã¯ã¢ããã®ããã®ãã®ã§ããªãã©ã«ã®å¤ã夿´ããªããããªãç´ç²ãªèå¥ã¿ã°ãã§ã¯ãããã¯æããã®ã§ã¯ãªãããããã¾ããã ãã®å ´åãã«ã¹ã¿ã ã¿ã°ã使ãã"cooked"ï¼ã¤ã¾ããã¨ã¹ã±ã¼ãã·ã¼ã±ã³ã¹ãå¦çãããï½ï¼ãªãã©ã«é
åã String.raw
ã«æ¸¡ãã¦ãçã®æååã§ãããã®ããã«è¦ãããããã¨ãã§ãã¾ãã
const html = (strings, ...values) => String.raw({ raw: strings }, ...values);
// ãã©ã¼ããã¿ã¼ã«ãã£ã¦ã¯ããã®ãªãã©ã«ã®ã³ã³ãã³ãã HTML ã¨ãã¦æ¸å¼åãã
const doc = html`<canvas>\n</canvas>`;
// "<canvas>\n</canvas>"; "\n" ãæ¹è¡æåã«ãªã
æåã®å¼æ°ã¯ raw
ããããã£ãæã¤ãªãã¸ã§ã¯ãã§ããã®å¤ã¯ãã³ãã¬ã¼ããªãã©ã«ã®åºåãããæååã表ãé
å風ãªãã¸ã§ã¯ãï¼length
ããããã£ã¨æ´æ°ã®ã¤ã³ããã¯ã¹ãæã¤ï¼ã§ãããã¨ã«æ³¨æãã¦ãã ãããæ®ãã®å¼æ°ã¯ç½®ãæãç¨ã§ããraw
ã®å¤ã¯é
å風ãªãã¸ã§ã¯ãã§ããã°ä½ã§ãè¯ãã®ã§ãæååã§ãã£ã¦ãæ§ãã¾ãããä¾ãã°ã 'test'
㯠['t', 'e', 's', 't']
ã¨ãã¦æ±ããã¾ãã以ä¸ã¯ `t${0}e${1}s${2}t`
ã¨ç価ã§ãã
String.raw({ raw: "test" }, 0, 1, 2); // 't0e1s2t'
仿§æ¸ ãã©ã¦ã¶ã¼ã®äºææ§ é¢é£æ
å ±
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4