åæ¸ã React Developer Toolsã¯Reactã®å ¬å¼éçºè ãã¼ã«ã§ãããæ¥å¸¸çãªã³ã³ãã¼ãã³ãéçºã«ããã¦ãå±æ§ããã¡ã¤ã«ã®ä½ç½®ç¹å®ãpropsã®ãã©ãã«ã·ã¥ã¼ãã£ã³ã°ãªã©æ§ã ãªã·ã¼ã³ã§éè¦ãªå½¹å²ãæããã¦ãã¾ããçç·´ããReact Developer Toolsã®ä½¿ç¨ã¯æ¥å¸¸ã®éçºãããå¹ççã«ãããã¨ãã§ãã¾ãã ãã®è¨äºã§ã¯ãReact Developer Toolsãã©ã°ã¤ã³ãä½ç³»çã«ç解ãããã¨ãã§ãã¾ããæ¬æã§ã¯ä»¥ä¸ã®ãã¨ãå¦ã¶ãã¨ãã§ãã¾ãï¼ ã³ã³ãã¼ãã³ãã®ä¸æåæ¢ãé 延èªã¿è¾¼ã¿ã·ããªãªã®ã·ãã¥ã¬ã¼ã·ã§ã³ã ã³ã³ãã¼ãã³ãã«å¯¾å¿ããå®éã®DOMãæ©ãç¹å®ããæ¹æ³ã propså ã®ç¹å®ã®é¢æ°ãã©ãã§ä½æããã¦ããããæ©ãç¹å®ããæ¹æ³ã ã³ã¼ãå¤æ´ãªãã§ãpropsãä»ããã³ã³ãã¼ãã³ãå¤æ´ããªã³ã©ã¤ã³ã§æ¤ç¥ããæ¹æ³ã ã³ã³ãã¼ãã³ããã©ã®ãã¡ã¤ã«ã§ä½æããããã
ã¯ããã« ããã°ãã¯ï¼ çããã¯ä»¥ä¸ã®ãããªããæ¶ãã¦ãã¾ãè¦ç´ ãDevToolsã§ç¢ºèªãããã¨ãã¯ã©ããã¾ããï¼ å¸¸ã«è¡¨ç¤ºãããããã«ããããã³ã¼ããä¿®æ£ãã¦ãããDevToolsã§è¦ç´ ã確èªããããã¦ãã¾ãããï¼DevToolsããã¾ã使ããã¨ã§ãããããã³ã¼ãã®ä¿®æ£ãããã¨ãç°¡åã«è¦ç´ ã®ç¢ºèªãã§ããã®ã§ãã®ã¡ãã£ã¨ããTipsã®ãç´¹ä»ã§ãï¼ â CSSã¤ãã³ãã§ã®ç¢ºèªæ¹æ³ ã¾ãã¯CSSã¤ãã³ãã§è¦ç´ ã®è¡¨ç¤ºå¶å¾¡ãè¡ã£ã¦ãããã¿ã¼ã³ã§ã®ç¢ºèªæ¹æ³ã§ãã以ä¸ã®ããã«CSSã¤ãã³ãã®hoverã§è¡¨ç¤ºå¶å¾¡ããã¦ããè¦ç´ ãä¾ã«DevToolsã§ç¢ºèªããæ¹æ³ãè¦ã¦ããã¾ãããï¼ import "./style.css"; export const Index = () => { return ( <div> <button className="myButton">Button</button> <
ã¦ã§ãä¸ã§JavaScriptãå®è¡ãã¦ãã°ãçºçããå ´åããã©ã¦ã¶ã«å èµããã¦ããéçºè ãã¼ã«ã使ã£ã¦ãããã°ãããã¨ãããããã¾ãããããããã©ã¦ã¶ã§ã®ãããã°ã«ããã¦å½¹ç«ã¤ãã¯ããã¯ãNetflixã§ããã³ãã¨ã³ãã®éçºã«æºãã£ã¦ããã¢ã©ã³ã»ãã«ãã¦ã¢ã¼ãããã¾ã¨ãã¦ãã¾ãã 67 Weird Debugging Tricks Your Browser Doesn't Want You to Know | Alan Norbauer https://alan.norbauer.com/articles/browser-debugging-tricks âé«åº¦ãªæ¡ä»¶ä»ããã¬ã¼ã¯ãã¤ã³ã éçºè ãã¼ã«ã®ãã½ã¼ã¹ãã¿ãã«ã¯ãããã¬ã¼ãç¨æããã¦ãããJavaScriptã®ä»»æã®è¡ã«ãã¬ã¼ã¯ãã¤ã³ããè¨å®ãããã¨ã§å®è¡ãä¸æåæ¢ãã¦å¤æ°ãã³ã¼ã«ã¹ã¿ãã¯ã®ä¸èº«ã確èªã§ãã¾ãããã¬ã¼ã¯ãã¤ã³ãã
Logpointsã使ãã Webããã³ãã¨ã³ãã®éçºãããéããããã°ç®çã§ãç¹å®ã®å¦çãå®è¡ããããã¨ãããã¨ã確èªããããã« console.log() ã使ããã¨ã¯å¤ãã¨æãã¾ããããããGoogle Chrome ã Microsoft Edge ã§å©ç¨å¯è½ãª Logpoints ãå©ç¨ãããã¨ã§ã console.log() ã使ããã¨ãã³ã³ã½ã¼ã«ã«ã¡ãã»ã¼ã¸ãåºåãããã¨ãå¯è½ã§ãã ãªãLogpointsã使ãã®ï¼ Logpoints ã使ãã®ã«ã¯ä»¥ä¸ã®ã¡ãªãããããã¾ãã ãããã°ãåä½ç¢ºèªã®ããã«ã³ã¼ããå¤æ´ããå¿ è¦ãç¡ã console.log() ã誤ã£ã¦commitã«å«ãã¦ãã¾ãå¿é ãç¡ã console.log() ãå ¥ããå¾ã«åãã«ããããããªãã¼ããå¾ ã¤å¿ è¦ãç¡ã ã©ããã£ã¦Logpointsã使ãã®ï¼ logpoints ã¯ä»¥ä¸ã®ããã«ä½¿ç¨ãã¾ãã Chr
Webã¢ããªã±ã¼ã·ã§ã³ã§ã¯ãDOMã®è¦ç´ ã«ã¤ãã³ããªã¹ã(ã¤ãã³ããã³ãã©)ãåãä»ãããã¨ã§ãã¦ã¼ã¶ã¼ã«ããæ§ã ãªæä½ (ã¯ãªãã¯ãªã©) ã«å¿ãã¦å¦çãè¡ããã¨ãã§ãã¾ãã ããããã¤ãã³ããªã¹ããç»é²ãã¦ããä»ã®ã¤ãã³ããªã¹ãã¨ã®å¹²æ¸ã«ãã£ã¦æå³ããéãã«çºç«ããªããã¨ãããã¾ããããã§ã¯ãã®èª¿æ»æ¹æ³ãç´¹ä»ãã¾ãã åæç¥è: ã¤ãã³ããããªã³ã°ã¤ãã³ãã«ã¤ãã¦ã¯çè ã®éå»è¨äºã§ã解説ãã¾ããããããããã¦ããã§ã説æãã¾ããã¤ãã³ããããªã³ã°ãç解ãããã¨ããã¤ãã³ããããã°ã®è¿éã ããã§ãã DOMã«ããã¦ãè¦ç´ ã¯ãã¹ããããã¨ã«ãã£ã¦æ¨æ§é ãå½¢æãã¾ããããè¦ç´ (ã¿ã¼ã²ããè¦ç´ )ãã¯ãªãã¯ããããªã©ãã¦ã¤ãã³ããçºçããã¨ããã¤ãã³ãã¯ãã®è¦ç´ èªä½ã ãã§ã¯ãªãããã®ç¥å è¦ç´ ã«ãéããã¾ãããããã¤ãã³ããããªã³ã°ã¨ããã¾ãã ã¤ãã³ããããªã³ã°ã¯2ã¤ã®æ®µéã«åãããã¾ãã Cap
ã¯ããã« ããã«ã¡ã¯ãkenã§ãã GWã«ãæã ãªï½ï½ããããªæ¥ã¯VS Codeã®å ¬å¼ããã¥ã¡ã³ããèªããï¼wãã¨æã£ã¦ä½æ°ãªãèªãã§ãããããã°ã«é¢ãã¦ç¥ããªãæ©è½ãããã¤ããã£ãã®ã§ãä»åã¯ããããç´¹ä»ãããã¨æãã¾ãã ããããä»ããç´¹ä»ããæ©è½ã¯ãã¾ãç¥ããã¦ãªãã¨æãã¾ããããå ¨é¨ç¥ã£ã¦ããVS Codeå®å ¨ç解è ãªã®ã§èªã£ã¦ãã ãããï¼ï¼ï¼ï¼ 以ä¸ã«è¨è¼ããå 容ã¯VS Codeã®å ¬å¼ããã¥ã¡ã³ãã®Debuggingã¨ããç« ãåèã«ãã¦ãã¾ãã 注æ ãããã°ã§ä½¿ãã便å©ãªæ©è½ ãã°ãã¤ã³ãæ©è½ è¡ãæå®ããã°ãã¤ã³ãã追å ããã¨ããã®è¡ã訪ããã¿ã¤ãã³ã°ã§ãã°ãåºåã§ãã¾ãã ãã¡ãããã°å ã«ã¯{å¼}ã¨ããæ¸å¼ã使ãã°å¼ãå«ãããã¨ãã§ãã¾ãã æ¢åã®ã³ã¼ãã«ä¿®æ£ãå ãããã¨ãªãããã°ãåºåã§ããã®ã¯å¬ããã§ããï¼ï¼ ãã㧠ãããªã³ããããã°ããprintè¡ãæ¶ãå¿ãã¦PRã
JavaScriptåå¿è ã®ããããããã°åãã¾ã ã¾ã æãã©ãããããããã°åã£ã¦ã¤ãã®ã â¦ã¨æ©ãã§ããã ð¨âð» < ã¹ã¿ãã¯ãã¬ã¼ã¹ããã¨ãããï¼ ð¨âð» < ã¹ã¿ãã¯ãã¬ã¼ã¹ããã«ã¯debuggerã¨ãconsole.trace()使ãã¨ãããï¼ ã¨æãã¦ããã ãdebuggerã使ã£ããã¨ã¦ã便å©ã ã£ãã®ã§ð ã¹ã¿ãã¯ãã¬ã¼ã¹ã¨ã¯ ã¹ã¿ãã¯ãã¬ã¼ã¹ (stack trace)ã¨ã¯ ã¨ã©ã¼ãçºçããã¨ãã«è¡¨ç¤ºãããå 容ã§ããã®ã¨ã©ã¼ãçºçããã¾ã§ã®éç¨ï¼ã©ããªå¦çãã©ã®é çªã§å¼ã³åºããããã®æµãï¼ãããã£ããã¨è¡¨ç¤ºãããã®ã§ãã ãåãããããã§ãåãããªããã§ããåãã£ããæ°ã«ãªããITç¨èªè¾å ¸ ã¹ã¿ãã¯ãã¬ã¼ã¹ã使ã£ã¦åé¡ãã©ãåãåããã ã¾ãã¯åé¡ãèµ·ãã¦ããç®æã®ã¹ã³ã¼ããçããã¦ããã¾ãããð¡ åé¡ã®åãåãæ¹ã¨ã㦠ãã£ããå ¥å£ã¨åºå£ã®é¢æ°ã«é©åãªå¤ãå ¥ã£ã¦
æ¬çªã®ãµã¤ããçºãã¦ãã¦ãããã¼ããã®HTMLãããããããã£ã¨éããªãã®ã«ãªã¼ãã£ã¦æãæããã¾ãããã åã¯ããã¾ããã§ããæ¤è¨¼ããã ãã®ããã«ããããã¯ãã®ã³ã¼ããç´æ¥ãããã®ã¯å¤§ããã ãããªæã«ãwgetã¨mirrorã¨ããã³ãã³ãã使ã£ã¦ãã¼ã¸ããã¦ã³ãã¼ããã¦ãã»ãã®å°ããHTMLãå¤æ´ãã¦ãã¾ãã ç´¹ä»ãã¾ãï¼è¿½è¨ã«Local Overridesã¨ããããã®ãã®ãºããªãªãChromeã®æ©è½ãç´¹ä»ãã¦ã¾ãï¼ã æè¿ãã£ã話ã§ããç¹ã«Core Web Vitalsã¨ãé度æ¹åã«ã¤ãã¦ã ãã©ãã«ããã¯ã®ã¨ãããã¼ã¸ã®ã¹ã³ã¢ãè½ã¡ã¦ãã¦ãChrome DevToolsã§è¦³å¯ãã¦ã¿ãã¨ãã©ããYouTubeã®åãè¾¼ã足ãå¼ã£å¼µã£ã¦ããã 表示é åå¤ã«ãé¢ãããiframeã®ä¸èº«ããã¼ãããã¦ãã¾ãã ããã¯ç´ãããï¼æ¬æ¥ãªãæ¬çªã¸ä¸ããåã«æ°ã¥ãä»çµã¿ãä½ãããã®ã§ãããä¸æ¦ç½®ãã¦
é·ãé Chrome ã® DevTools ã使ã£ã¦ãã¦ã便å©ã ãªã¨æã£ãæ©è½ãã¾ã¨ãã¦ã¿ã¾ããã æ§ã ãªæ©è½ãããããããè¦ãã¦ããã¨éçºæã«å½¹ã«ç«ã¤ãããããªãã®ã§ããã²ä½¿ã£ã¦ã¿ã¦ãã ããã ãã®è¨äºã¯ Corome DevTools å ¬å¼ ãåèã«ãã¦ãã¾ãã æ¥æ¬èªå è±èªãè¦æãªæ¹ã¯æ¥æ¬èªåãã¾ãããã æé DevTools ãéããããæ¯è»ãã¼ã¯ãã¯ãªã㯠Language ã§æ¥æ¬èªãé¸æ [Reload DevTools] ãã¯ãªãã¯ã㦠DevTools ã®ãªãã¼ãããã è¦ç´ ã®ç¶æ ãå¼·å¶ æå®ã®è¦ç´ ã :hover ã :focus ãªã©ã®ç¶æ ã«å¼·å¶çã«ãããã¨ãã§ãã¾ãã ãããããã¨ã§æå®ç¶æ æã®ã¹ã¿ã¤ã«ã確èªãããã¨ãã§ãã¾ãã æé è¦ç´ ã¿ããã¯ãªãã¯ãã ç¶æ ãå¤æ´ãããè¦ç´ ãé¸æãã ä»å㯠Google ã®æ¤ç´¢ãã©ã¼ã ãé¸æ [:hov] ãã¯ãªãã¯ãã
Update 2024-03-30: Chrome 123 ãã "Emulate a focused page" ã追å ãããã ãããç¨ããã°è¯ãããã以éã®å ¨ã¦ã®æ¹å¼ã¯å¤ããªã£ãã Apply other effects: enable automatic dark theme, emulate focus, and more https://developer.chrome.com/docs/devtools/rendering/apply-effects#emulate_a_focused_page ãã¦ã¹ãä¹ã£ã¦ãªãã¨åºãªã UI ããããã« Tab ãªã©ã§ãã©ã¼ã«ã¹ã移ãããã®ç¶æ 㧠Dev Tools ã® "Emulate a focused page" ãæå¹ã«ããã°è¯ãã Intro å æ¥ãå¾è¼©ããmouseover ä¸ã«ãã表示ãããªã DOM ã®ãããã°ãã«æããã£
ãèªãã§æãåºããã®ã§ãç´¹ä»ã§ãã å ã®è¨äºã¨åæ§ã«ä»¥ä¸ã®é¢æ° sum ã«ã¤ãã¦ã function sum(nums, acc = 0) { console.log({ nums, acc }); if (nums.length === 0) return 0; if (nums.length === 1) return nums[0]; return sum(nums.slice(1), acc + nums[0]); } ãã®é¢æ°sumã®å¼æ° (nums 㨠acc) ã®å¼ã³åºããã¨ã®å¤åãè¦ããå ´åã¯ãæè¬ããªã³ããããã°ã debugger ã使ãã®ã¯ä¸è¬çãªãã¯ããã¯ã¨ãã¦ããç¥ããã¦ãã¾ããããã®ãããªé¢æ°å¼ã³åºãæã®å¼æ°ãç¥ãããå ´åã¯monitor(function)ã¨ããé¢æ°ã使ããã¨ã§åæ§ã®å¹æãå¾ããã¨ãåºæ¥ã¾ãã ãã®å ´å㯠monitor(sum)ã¨ããå¾ã«ãé¢
æ°åã®åãæ±ããããã°ã©ã ãä½æãããã¨ã«ãªããææ°æã ã¨ä»¥ä¸ã®ãããªããã°ã©ã ãæ¸ããã¨ããç¶æ³ãæ³åãã¦ä¸ããã function sum(nums, acc = 0) { if (nums.length === 0) return 0; if (nums.length === 1) return nums[0]; return sum(nums.slice(1), acc + nums[0]); } const nums = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; console.log(sum(nums)); // expected: 55 ä¸è¦ããã¨ä½ãåé¡ãªãããã«è¦ããããã°ã©ã ã§ãããå®ã¯ãã°ãããã¾ã (çããåããã¾ãã?) *1ãå®éã«ä¸è¨ããã°ã©ã ãå®è¡ãã㨠55 ã§ã¯ãªã 10 ãåºåããã¾ãã ããããå ´é¢ã«ééããã¨ãèªç¶ã¨ sum
ä»æ¥ Ruby Hacking Challenge in Hamada.rb ã«åå ããã¨ãã« ruby_jard ã¨ãã Ruby ã®ãããã°ãã¼ã«ãæãã¦ãããã¾ããã ãããããªãåã¾ãããããã£ãã®ã§ã¡ãã£ã¨ã¾ã¨ãã¦ã¿ã¾ãã ruby_jard ã¨ã¯ ruby_jard ã¨ã¯ Ruby ã®ã³ã¼ãããããã°ãããã¼ã«ã«ãªãã¾ãã ruby_jard | Just another ruby debugger. Provide a better experience while debugging Ruby rubyjard.org ç«ã¡ä½ç½®ã¨ãã¦ã¯ byebug ã®ãããªãããã°ãã¼ã«ã«ãªã£ã¦ãããã³ã¼ãä¸ã§ jard ã¨ããã¡ã½ãããå¼ã³åºãã¨ãã®ã¿ã¤ãã³ã°ã§ããã»ã¹ãåæ¢ãã¦ãã³ã³ã½ã¼ã«ä¸ãã Ruby ã®ã³ã¼ããå®è¡ã§ãããããªå½¢ã«ãªã£ã¦ãã¾ãã å®éã«ã©ãããå½¢ã§ãããã°ããã®
JavaScriptã®ãããã°ã¯ãã¦ã§ãéçºã®å¿ é ã¹ãã«ã®ã²ã¨ã¤ã§ããããã°ã©ã ã®å®è¡ããããã°ãããã¨ã§ãç¾å¨ã®å¤æ°ã®å¤ããå¦çãã©ã®ããã«é²ãã§ããã®ãã確èªã§ãã¾ãããããã°ã«ãã£ã¦ããã°ã©ã ãæå³ããåä½ã«ãªã£ã¦ãããã®åæã«å½¹ç«ã¦ããã¾ãã æ¬è¨äºã§ã¯Google Chromeãã©ã¦ã¶ã¼ã®ãChrome Developer Toolsãï¼ä»¥ä¸ããããããã¼ãã¼ã«ãããDevToolsããã»ãã¼ã«ãºãã¨ããç¥ç§°ãããã¾ãï¼ã使ç¨ãã¦JavaScriptããããã°ããéã®åºæ¬çãªä½¿ãæ¹ã解説ãã¾ãããä»ã¾ã§ãããããã¼ãã¼ã«ã使ã£ããã¨ã®ãªããã¨ããæ¹ã§ããã®è¨äºãèªãã°ç解ã§ããããããã¥ã¼ããªã¢ã«å½¢å¼ã«ãªã£ã¦ãã¾ãã20åã»ã©ã§ç解ã§ããããã¾ã¨ãã¦ããã®ã§ãé çªã«è©¦ããªããèªã¿é²ãã¦ãã ããã ãã®è¨äºã§å¦ã¹ãã㨠ãããããã¼ãã¼ã«ã®ä½¿ãæ¹ JavaScriptã®ãã¬ã¼ã¯ãã¤
Webãã¼ã¸ã«å®è£ ããã¦ããHTMLè¦ç´ ã®æ§é ãå¯è¦åããheader, nav, main, articleãªã©ã»ãã³ãã£ãã¯è¦ç´ ãæ£ããå®è£ ããã¦ãããæ¤è¨¼ã§ããã¹ã¿ã¤ã«ã·ã¼ããç´¹ä»ãã¾ãã ãããã°æ©è½ãåãã¦ãããä¸æ£ãªãã¼ã¯ã¢ãããåé¡ã®ãããã¼ã¯ã¢ããã表示ãããã¨ãã§ãã¾ãã Construct.css Construct.css -GitHub Construct.cssã¯ã»ãã³ãã£ãã¯HTMLã®ä½¿ãæ¹ããã身è¿ã«ããããã«ãã¹ã¿ã¤ã«ãããã¯ã¨ãã¦ã¯ã©ã¹åã使ç¨ããã®ã§ã¯ãªããç´æ¥ã¿ã°ãã¹ã¿ã¤ã«ããCSSã®ã©ã¤ãã©ãªã§ããç®ã«è¦ããªãã»ãã³ãã£ãã¯ã®ã¿ã°ã§ãããã¨ãè¦è¦çã«ç¢ºèªãããã¨ãã§ãã¾ãã ãã©ã¦ã¶ã§ç°¡åã«å©ç¨ã§ããããã¯ãã¼ã¯ã¬ãããç¨æããã¦ãã¾ãã ããã¯ãã¼ã¯ã¬ãã Construct.cssã®ããã¯ãã¼ã¯ã¬ãã ããã¯ãã¼ã¯ã¬ããã使ç¨ããã¨ã以ä¸ã®CSS
console.logé¢é£ã«ã¤ãã¦ã¾ã¨ãã¾ããã ã¢ãã³ãã©ã¦ã¶ã§ããã°ã©ãã使ç¨ã§ããã¨æãã¾ãããåºæ¬åºåçµæçã¯chromeã§ç¢ºèªãããã®ã§ãã console.hogehogeã®ãããã console.log åºæ¬ å¼æ°ãå ¥ãããã¨ã§åºåçµæãã«ã¹ã¿ãã¤ãºã§ãã¾ã console.infoãconsole.warnãconsole.error ããããã§è¦ãç®ãå¤ãããã¨ãã§ãã¾ãã console.assert å¼ãè©ä¾¡ãã¦falseã®å ´åã«ãã°åºåãã¾ãã console.count ãã°ã®åºåçµæãåãå ´åã«ã«ã¦ã³ãæ°ãèªåçã«å¢ãã¦ããã¾ãã console.dir ãªãã¸ã§ã¯ãã®ããããã£ã®ä¸èº«ããã°ã«åºåãã¾ãã console.dirxml HTMLã¨ãXMLã®è¦ç´ ã渡ãã¨ãä¸ã®è¦ç´ ãå ¨é¨è¦ããããã«ãªãã¾ãã console.groupãconosle.group
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}