
ããããæ±ºå®çãæ¬²ãããªã åç½®ã ä»ã¾ã§ã¯ Qiitaã®ã³ã¼ãã«ã³ãã¼ãã¿ã³ã追å ããã¦ã¼ã¶ã¼ã¹ã¯ãªãã - Qiita Togetterãããã¤ã¼ããã³ãã¼ãããã¿ã³ã追å ããã¦ã¼ã¶ã¼ã¹ã¯ãªãã - Qiita ã¨æ¢åã®ãã®ã鏿ãã¦ã³ãã¼ããããç¡ããã®ãã³ãã¼ãããã¨ã㯠PHPããã¥ã¢ã«ãã颿°ãã³ãã¼ãããã¿ã³ã追å ããã¦ã¼ã¶ã¼ã¹ã¯ãªãã - Qiita ã¨ã³ãã¼ãããDOMãä½ã£ã¦ããã鏿ããã¨ããã¾ã©ãã£ãããæ¹æ³ãåã£ã¦ããã Qiitaã«ãè²ã è¨äºã¯ããã ã§ããããã®æ¹æ³ã¯ä¸»ã«Rangeã®å¦çãã¨ã¦ãã¨ã¦ãé¢åãªã®ã§ãæè¿ã¯ä½¿ã£ã¦ããªãã ç®æ°ããå 容ã§ã¯ãªããã使ç¨é »åº¦ãé«ãã®ã§ã¾ã¨ããã è¦ä»¶ ä»»æã®JSå´ã§ç¨æããæååãã¯ãªãããã¼ãã«ä¿åãããã åä½ã®ããªã¬ã¼ã¯ä¸»ã«ãã¿ã³ã¯ãªãã¯ã®ã¤ãã³ãé§å é常ã®ã³ãã¼åä½ãé»å®³ããªã è¤æ°ã®ã³ãã¼å¦çã追å ããã¨ã
ãã¼ãã¼ãå ¥åãã¹ã¯ãªããã«ä»£è¡ããã ãã©ã¦ã¶ä¸ã§å®è¡ãããã¢ããªï¼ã¢ã¡ããã®ç·¨éç»é¢ã管çç»é¢çï¼ã«å¯¾ãã¦ãããã¼å ¥åãããã¨åçã®äºã代è¡ããããã¨ã JavaScriptã§ã¯å¯è½ã§ãã ã¹ã¯ãªããã®ããã°ã©ã ã¯ãã¦ã¼ã¶ã¼ã®ãã©ã¦ã¶ä¸ã®æ®ã©ã®æä½ãã代è¡ããäºãå¯è½ã¨æããã¾ãã æªç¨ããã°å±éºãªä»æ§ã¨èª°ãæ³ååºæ¥ã¾ãããå®éã«ãã®æ§ã§ãã ãããããããã«å¤ãã®æ å ±ãããã¾ãããåå以ä¸ã®æ å ±ã¯ã使ããªããã¨ããå£ã«å½ããã¾ããã ããã«ã¯ãæ§ãIEã®ä»æ§ã®åé¡ããFirefox Chromeçã¨ä»æ§ãç°ãªãåé¡ããã¼ãã¦ã¨ã¢ã«é¢é£ããåé¡ãªã©ãJavaScriptã®ã³ã¼ããçµ±ä¸åºæ¥ãç¾å¨ã«è³ã£ãèæ¯ãããæ§ã§ãã ãã®åé¡ã¨ãç§ã®ã³ã¼ãã®æ±ãã®ä¸æ £ããéãªãããªããªãå®éã«ãã¼å ¥åãå®ç¾ããã«è¦å´ãã¾ããã ããã§ã¯ããChromeãã¨ãTampermonkeyãã®ç°å¢ã§ãå ¥åã
ååããµã¤ãã®è¡¨ç¤ºã¹ãã¼ãã¢ããã®ããã«4ã¤ã»ã©ä½æ¥ããããããããã®ã»ãã«ããã¡ã¤ã«ãµã¤ãºã縮å°ããããã¨ãæå¹ã javaScriptãCSSãã¡ã¤ã«ã®ãæ¹è¡ããããã¯ã¤ãã¹ãã¼ã¹ããã³ã¡ã³ããã¯ããããèªã¿ããããã¦ããã ãããã©ã¦ã¶ã«ã¨ã£ã¦ä¸è¦ãªããããåé¤ããã°ãã¡ã¤ã«ãµã¤ãºã縮å°ã§ããã å°ããããäºãMinifyï¼ãããã¡ã¤ï¼ãMinifyããããã®ãæ´å½¢ãã¦èªã¿ãããããäºãBeautifyï¼ãã¥ã¼ãã£ãã¡ã¤ï¼ã¨ãããã¾ãã2ã¤ã®ãã¡ã¤ã«å 容ãCompareï¼ã³ã³ãã¢=æ¯è¼ï¼ãããµã¼ãã¹ãããã ããããWebä¸ã§å©ç¨ã§ãããµã¼ãã¹ãããã®ã§ãä»åã¯ããããã¡ã¢ã MinifyãBeautifyã®Webãµã¼ãã¹ Minifyã®ã¿ Beautifyã®ã¿ ã©ããªãã¡ã¤ã«ã§ããããããã«ããªãPretty Diffã 夿°ã®ãµã¼ãã¹ãã¾ã¨ãããã¼ã¸ãcleancss.comã ã¡
ESLintã¯JavaScriptãéçã«æ¤è¨¼ãããã¼ã«ã§ãã ããããããè¨ãã°ããã¼ã ã¡ã³ãã¼éã§çµ±ä¸ãããç¾ããã³ã¼ããçæããããã®ãã¼ã«ã§ãã è¨å®ãã¡ã¤ã«ãæ¸ãã¦ããã°èªåã§å¤æãããã¨ãå¯è½ã§ãã ESLintãå§ãããï¼ JavaScriptã®Lintãã¼ã«ã«ã¯jslint, jshint, JSCSãªã©ãããã¾ãã 2016/11 æç¹ã§ npm trendsã§æ¯è¼ããçµæã以ä¸ã®ç»åã§ãã http://www.npmtrends.com/jslint-vs-jshint-vs-jscs-vs-eslint åå¹´åã¯jshintã¨ä¸¦ãã§ãã¾ãããããããåå¹´ã®éã«ããã«ã¹ã³ã¢ãã¤ãã¦ãã¾ãã jshintã¯éçºãéåãã¦ãã¾ãã ã¾ãJSCSã®éçºãã¼ã ã¯ESlintã«ç§»è¡ãããã¨ã決ãã¾ããã 以ä¸ã«è¨è¼ããæåã©ã¤ãã©ãªã¯éçºæã«ESLintã使ã£ã¦ãã¾ãã jQu
We're excited to announce that ESLint v6.0.0 has been released: https://t.co/EO4ZrZIMYM â ESLint (@geteslint) 2019å¹´6æ22æ¥ ESLint 㯠JavaScript ã®ããã®éçæ¤è¨¼ãã¼ã«ã§ããã³ã¼ããå®è¡ããåã«æãããªãã°ãè¦ã¤ããããæ¬å¼§ãã¹ãã¼ã¹ã®ä½¿ãæ¹ãªã©ã®ã¹ã¿ã¤ã«ãçµ±ä¸ãããããã®ã«å½¹ç«ã¡ã¾ããåæ§ã®ãã¼ã«ã¨ãã¦ã¯ JSLint, JSHint çãããã¾ãã ESLint ã®ç¹è²ã¯ã ãã¹ã¦ã®æ¤è¨¼ã«ã¼ã«ãèªç±ã« on/off ã§ãã èªåã®ããã¸ã§ã¯ãã«åãããã«ã¹ã¿ã ã«ã¼ã«ãç°¡åã«ä½ãã è±å¯ãªãã«ãã¤ã³ ã«ã¼ã« (5.0.0 æç¹ã§ 260 å) ã«å ãã¦ãããããã®ãã©ã°ã¤ã³ãå ¬éããã¦ãã ECMAScript 2015 (ES6), 2016, 201
ããæ¥ããªã ãåããã®è¨äºãè¦ã¦ããã¨ãããã¨ã¯ãããã¦ããã¨ãããããã¨ãããã¦ãããã¨ããçã®ç·ãããã¨ãããã®ã ããã è»å¼±ãªç·ãã¡ãã¹ãããã®äºæ¸¬å¤æã«éª¨æãã«ããã¦ããéã«ãåã¯å骨ããããã«ããã«æ¥ãã ãã¾ãã®ããããè² ããæ°ã¯å®é大äºã ãå¼·ããªããã°ãåã¯ã¡ãã·ã³ã§éåãæ»ã¬ã ããã ã ãçã®ç·ã¨ç¡è¬ã¯éãã ã¨ãã«ãåã¯ç¥ã®é«ééè·¯ãããããã·ã¥ããã²ã¤ãããããã ã¤ã¾ãä»ããã®ã¨ãã¨ãããã¨ã ã ESLintãå ¥ãã ãåã®JavaScriptããã¡ããã¡ããªãã¨ãããã¯ãã£ã¦ããã ãªããªããã¾ãã¯ESLintã使ã£ã¦ããªãããã ã ãåã¯ã³ã¼ãã®èéãè¸ç ´ã§ããã¿ããªç·ãæ°åã£ã¦ããããããã«ãéçãæ¥ãã ããã ä»ã®ã¾ã¾ã§ã¯ãåãåãç®ãä¼ããã®ã¯ãã¤ãã®é£ã§ã¯ãªãæ··æ²ã¨ããã³ã¼ãã®æãæºãã ã ã¾ãã¯ESLintãå ¥ããã ç°¡åã ã ãåã®ãã®ç®ã®åã®æ¿ã®é»
ES2015/ES6ã§è¿½å ãããã¢ãã¼é¢æ°()=>{...}ã¯thisãææã§ããã®ãã¡ã¤ã³ã ã¨æã£ã¦ããã®ã§ãããè²ã ã¨çç¥ããæ¸ãæ¹ãã§ããããã§ãã¾ã 䏿 £ããªã®ã§ã©ã¤ãã©ãªã¨ãåèã®ã³ã¼ãè¦ã¦ãæã«ä½ã ã£ãï¼ã¨ãªããã¡ã ã£ãã®ã§çç¥ããæ¸ãæ¹ã®ã¡ã¢ã ã¢ãã¼é¢æ°ã®åºæ¬å½¢ (param1, param2) => { // ... å¦ç } 颿°åãä»ãã¦å®ç¾© const func = (param) => { // ... å¦ç } 弿°ã1ã¤ã®ã¨ã()ãçç¥ã§ãã (param) => { ... } â çç¥å½¢ param => { ... } å¤ãè¿ãã ãã®é¢æ°ã®ã¨ãreturnã»{}ãçç¥ã§ãã (param) => { return val } â returnãçç¥ (param) => { val } â {}ãçç¥ (param) => val â» {}ã ãçç¥ã¯ã¨ã©ã¼
ããã«ã¡ã¯ãã¨ãã¨ç³ãã¾ãã æ¬ç¨¿ã§ã¯è¿ä»£çãªJavaScriptãå ¨ãç¥ããªãã£ãç§ããããåå¹´éã®ããã³ãã¨ã³ãéçºã§ä½é¨ããã«ã«ãã£ã¼ã·ã§ãã¯ããç´¹ä»ãããã¨æãã¾ãã ç¥ã£ã¦ããæ¹ããããã°ãå½ããåã ãï¼ãã¨çªã£è¾¼ã¾ãããå¾ãªãå 容ã§ãããããä½å弱輩è ããã容赦ãã ããã ç§ã¨åãããã«è¿ä»£JSå ¨ç¶ç¥ããªããã³ã®æ¹ã¯ä¸ç·ã«è¡æãåãã¡åãã¾ãããã ãã®ï¼ constã¨let ä¸ä¸ããç¾ä»£ã«ãã£ã¦ããç§ãã¾ãé©ããã®ãããã§ããã ããã³ã³ã¹ãã»ã»ã»ã¬ããã»ã»ã»ï¼ varã¯ï¼varã¯ã©ãã«ãã£ããã ï¼ï¼ ä¸ä¸JSã§ã¯éæ¿ã ã£ãvarã«ãã夿°å®£è¨ããã¢ãã³JSã§ã¯ã©ãå¹ã風ã ç¾å ´ã®ã½ã¼ã¹ã³ã¼ãã¯å ¨ã¦constã¨letã«ç½®ãæãããã¾ããã // åä»£å ¥ const hoge = "ã»ã"; hoge = "ã»ãã»ã"; // å®è¡æã«ã¨ã©ã¼ãåºã Uncaught TypeE
⦠ããã¨ãæå®ããã URL ã§æ°ããã¦ã£ã³ãã¦ãéãã¾ããã»ã¨ãã©ã®ã¢ãã³ãã©ã¦ã¶ã¯ãå¥ã¦ã£ã³ãã¦ã§ã¯ãªãæ°ããã¿ãã¨ãã¦éãããè¨å®ããã¦ãã¾ãã ãããã¢ããã¯ã¨ã¦ãå¤ãããåå¨ãã¾ããå½åã®èãã¯ãã¡ã¤ã³ã®ã¦ã£ã³ãã¦ãéãããã¨ãªãå¥ã®ã³ã³ãã³ãã表示ãããã¨ã§ãããç¾æç¹ã§ã¯ããããããããã®ä»ã®æ¹æ³ãããã¾ã: fetch ã使ããã¨ã§ã³ã³ãã³ããåçã«èªã¿è¾¼ããã¨ãã§ãããããåçã«çæããã <div> ã®ä¸ã§è¡¨ç¤ºãããã¨ãã§ãã¾ããã§ãããããããã¢ããã¯ç§éãæ®æ®µä½¿ç¨ãããã®ã§ã¯ããã¾ããã ããã«ãããã¢ããã¯ãè¤æ°ã®ã¦ã£ã³ãã¦ãåæã«ã¯è¡¨ç¤ºããªãã¢ãã¤ã«ããã¤ã¹ã§ã¯æéãè¦ãã¾ãã ããã§ãããããã¢ããããã¾ã ã«ä½¿ãããã¿ã¹ã¯ãåå¨ãã¾ããä¾ãã° OAuth èªè¨¼ï¼Google ã Facebook ãªã©ã¸ã®ãã°ã¤ã³ï¼ããªããªã: ãããã¢ããã¯ç¬ç«ãã Jav
Javascriptã§åçã«è¿½å ããè¦ç´ ã«ã¤ãã³ããè¨å®ãããï¼ã¾ãã¯è¿½å ããè¦ç´ ãåå¨ããã°ãããã£ãå¦çãããããã£ã¦ãã¨ãæã ããã¾ãã ãã®å ´åãã©ããã£ã¦å®è£ ããã°è¯ãã調ã¹ãã®ã§ã¡ã¢ã DOMã®å¤æ´ãç£è¦ãããMutationObserverãã¨ããAPIã使ãã°ã§ãããã§ãã åºæ¬ã®æ§æ åºæ¬çãªæ§æã¯æ¬¡ã®éãã¨ãªãã¾ãã //ãªãã·ã§ã³ const options = { childList: true, //ç´æ¥ã®åã®å¤æ´ãç£è¦ characterData: true,ã //æåã®å¤åãç£è¦ characterDataOldValue: true,ã//屿§ã®å¤ååãè¨é² attributes: true,ã //屿§ã®å¤åãç£è¦ subtree: true, //å ¨ã¦ã®åè¦ç´ ãç£è¦ } //ã³ã¼ã«ããã¯é¢æ° function callback(mutationsLis
Tampermonkeyã¨Greasemonkeyã®ä½¿ãæ¹ã¨UserScriptã®æ¸ãæ¹ã解説ãã¾ãã ãããã®ã¢ããªã³ã使ããã¨ã«ããã¦ã§ããã¼ã¸ã®è¦ãç®ãèªç±ã«å¤æ´ãããã¨ãã§ãã¾ããuserscriptãèªåã§æãéãã«ä½ããããã«ãªãã°ãããããµã¼ãã£ã³ã®å¹çãé£èºçã«ä¸ããã¾ãã UserScriptã使ã£ãããã°ã©ãã³ã°ä¾ãå°ãã ãç´¹ä»ãã¾ãã ä¾1.ã°ã¼ã°ã«ã«ãã¤ã¼ãæ¤ç´¢æ©è½ãä»ããã TampermonkeyãGreasemonkeyãå°å ¥ãããã ã©ã¡ãã使ã£ã¦ãæ§ãã¾ãããã¹ã¯ãªããã«ã¯äºææ§ãããã©ã¡ãã«ãç§»æ¤å¯è½ã§ãã ä»åã¯Tampermonkeyã®æä½æ³ã ãã解説ãã¾ãã UserScriptã®æ¸ãæ¹ã¯ã©ã¡ãã§ãå ¨ãåãã§ããã¾ãã¯ã¢ããªã³ãã¤ã³ã¹ãã¼ã«ãã¾ãã Tampermonkey Chromeç¨ãFirefoxç¨ãEdgeç¨ Greasemonkey h
ç¹å®ã®ãã¼ã¸ã§ JavaScriptãå®è¡ããæ¡å¼µæ©è½ èªä½ã®ã¹ã¯ãªããã³ã¼ããä»»æã®ç¹å®ãã¼ã¸ã§å®è¡ãããã«ã¯ããã©ã¦ã¶ã Chromeã®å ´åã¯ãåãã¼ã¸ ã®æ§ãªæ¡å¼µæ©è½ãèªä½ããChrome Web Store ã«ç»é²ããå¿ è¦ãæãã¾ãã ããããä¿®æ£ãæ¡å¼µã®å¯è½æ§ãããã³ã¼ããç½®ããåã³æ´æ°ãå ããå ´æã¨ãã¦ã¯ãã¦ã§ãã¹ãã¢ã¯ãªã¯ã ä¸é©å½ã§ãã ããã§èª¿ã¹ãã¨ãèªä½ã¹ã¯ãªãããèªåã®çºã«å©ç¨ãããã¼ã¹ç°å¢ã¨ãã¦ã®æ¡å¼µæ©è½ãå¹¾ã¤ãããäºãå¤ãã¾ããã ãã®ä¸ã§ãå¤ãã®ã¦ã¼ã¶ã¼ãå©ç¨ããä¿¡é ¼ã®ãããããªæ¡å¼µæ©è½ããTampermonkeyãã§ããã ãã®æ¡å¼µæ©è½ã¯ããStylusããã¦ã¼ã¶ã¼èªä½ã®CSSãä»»æã®ãã¼ã¸ã«é©ç¨ã§ããã®ã¨åæ§ãèªä½ã¹ã¯ãªãããä»»æã®ãã¼ã¸ã§å®è¡ãããã¹ã¯ãªããç®¡çæ©è½ãæã¡ã¾ãã ã¾ããã³ã¼ãç·¨éæ©è½ããStylusãåæ§ã«å è£ ãã¦ãã¦ãä½¿ç¨æ³ãªã©ã®èª¬æãã¼ã¸
ã¦ã¼ã¶ã¼ã¹ã¯ãªããã¨ã¯ã¦ã¼ã¶ã¼ã¹ã¯ãªããã¨ã¯ããã©ã¦ã¶ã®å¯¾è±¡ã¦ã§ããã¼ã¸ã§ã¦ã¼ã¶ä½æã®ã¹ã¯ãªãããå®è¡ããçºã®ä»çµã¿ã§ããå ã ã¯ãFirefoxã®ã¢ããªã³ã¨ãã¦ä½æãããGreasemonkeyä¸ã§ä½¿ç¨ã§ããã¹ã¯ãªããã§ããããã®å¾ãå¾ç¶ã®æ¡å¼µæ©è½ãåæ§ã®ä»æ§ã§å®è¡å¯è½ãªã¦ã¼ã¶ã¼ã¹ã¯ãªããã¨ãã¦ä¸è¬åãã¾ããã æ¡å¼µæ©è½ã®ç¨®é¡ã¦ã¼ã¶ã¼ã¹ã¯ãªããç¨ã®æ¡å¼µæ©è½ã¨ãã¦ãä¸»ã«æ¬¡ã®3種é¡ãéçºããã¦ãã¾ãã Greasemonkey - GitHubTampermonkey - GitHubViolentmonkey - GitHubâ»AdGuardãªã©ã®ä¾å¤ãåå¨ãã¾ãã ã¤ã³ã¹ãã¼ã«FirefoxGreasemonkey â ð¦ Firefox (ja) åãæ¡å¼µæ©è½ãå ¥æTampermonkey â ð¦ Firefox (ja) åãæ¡å¼µæ©è½ãå ¥æViolentmonkey â ð¦ Fi
Greasemonkeyã¨Tampermonkeyã¯ãWebãã©ã¦ã¶ã®æ©è½ãå¤§å¹ ã«å¼·åããç¡æã®æ¡å¼µæ©è½ã§ãããããã®å¼·åãªã¢ããªã³ã使ç¨ããã¨ãWebãã¼ã¸ã®åä½ãå¤è¦³ã夿´ããæ°åã®ã¦ãã¼ã¯ãªã¦ã¼ã¶ã¼ã¹ã¯ãªãããã鏿ã§ãã¾ãããµã¼ããã¼ãã£ã®éçºè ãJavaScriptããã°ã©ãã³ã°è¨èªã§æ¸ãããããã®ã¹ã¯ãªããã®æ©è½ã¯ãã¯ã³ã¯ãªãã¯ã§FacebookãInstagramã®ã¢ã«ãã å ¨ä½ããã¦ã³ãã¼ãããPandoraã®ã«ãã¯ã»ã¢ã³ãã»ãã£ã¼ã«ãå®å ¨ã«æ¹è¯ãããã¨ã«ã¾ã§åã¶ããã©ã¦ã¶ã«å¿ãã¦Greasemonkeyã¾ãã¯Tampermonkeyã®ãããããã¤ã³ã¹ãã¼ã«ãã¦ãã¦ã¼ã¶ã¼ã¹ã¯ãªããããã¼ã¸ã£ã¨ãã¦æ©è½ããã¾ããã¹ã¯ãªããããã¼ã¸ã£ã¼ã®æ¡å¼µæ©è½ãã¤ã³ã¹ãã¼ã«ããããæ¡å¼µæ©è½ãæ¤ç´¢ãããã以ä¸ã«ãªã¹ãããã¦ããæ¡å¼µæ©è½ã®ä¸é¨ã試ç¨ãããã¨ãã§ãã¾ãã Greasemonkeyã®ã¤
ã¤ãã³ããªã¹ãã®ç»é² document.addEventListener('keydown', function (e) { // å¦ç }, false); ä»ã«keypressã£ã¦ã®ããããã©ãkeydownããå§ãã çç±ã¯ç¢ºãGoogle chromeã§keypressã«ããã¨ãCtrl+aï¼å ¨ã¦é¸æï¼ã®ããã«ããã©ã«ãã§å¥åä½ãå®ç¾©ããã¦ããå ´åã«ãã¡ããå ã«åãã¦ãã¾ãããï¼ã ã£ãã¯ãï¼ã æ¼ããããã¼ã®åå¾ var shortcutKey = 'a'; document.addEventListener('keydown', function (e) { var pressed = String.fromCharCode(e.which).toLowerCase(); pressed = (e.ctrlKey ? 'C-' : '') + (e.altKey ? 'A-' :
JavaScriptã¯ãããã°ã©ãã³ã°è¨èªã®ã²ã¨ã¤ã§ãããããã¹ã±ã¼ãã³ãã¥ãã±ã¼ã·ã§ã³ãºã§éçºããã¾ããã éçºå½åã¯LiveScriptã¨å¼ã°ãã¦ãã¾ããããæ¥åææºãã¦ãããµã³ã»ãã¤ã¯ãã·ã¹ãã ãºãéçºããJavaãèå ãæµ´ã³ã¦ãããã¨ãããJavaScriptã¨æ¹åããã¾ããã åãã®ããWebãã¼ã¸ãä½ããã¨ãç®çã«éçºããããã®ã§ã主è¦ãªWebãã©ã¦ã¶ã®ã»ã¨ãã©ã«æè¼ããã¦ãã¾ãã
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}