ã¿ã¤ãã«ã¯ååé£ãã½ãã
8/31ã«JavaScriptãã¯ããã¯ãã¤ãã«ãçºå£²ããã¾ãï¼
JavaScriptãã¯ããã¯ãã¤ãã« ~å¹ççãªéçºã«å½¹ç«ã¤150ã®æ
- ä½è : JSãµãã¼ã¿ã¼ãº
- åºç社/ã¡ã¼ã«ã¼: æè¡è©è«ç¤¾
- çºå£²æ¥: 2012/08/31
- ã¡ãã£ã¢: åè¡æ¬ï¼ã½ããã«ãã¼ï¼
- è³¼å ¥: 38人 ã¯ãªãã¯: 1,796å
- ãã®ååãå«ãããã° (11件) ãè¦ã
ããããããã¨ã«ç®æ¬ããã ããã¨ãã§ãã¾ããã®ã§ã誰ãããæ©ãã¬ãã¥ã¼ãæ¸ãã¦ãããã¨ç®è«ãã§ãã¾ããæ¬ããããã¨ããæå³ã§ã¯ã以åè¾»ããããé ãããã¨ãããã¾ããããåºçã«ããã£ã¦ã®ã¿ã¤ãã³ã°ã§ç®æ¬ãã¦ãããã£ã¦åãã¦ã®ãã¨ã§ãããæããç®æ¬ãã¦ããã£ãã(^_-)-âã£ã¦ããã®æ§ãã¦ãã®ã§ãä¸ã¤å¤¢ãå¶ãã¾ãããããã¾ãããã
ã¡ãªã¿ã«ãå·çé£ã®ç±ãæ³ãã®ããã£ãã¨ã³ããªã¯ãã¡ãã
- 「JavaScriptテクニックバイブル」を執筆しました。 - cimada-ism
- 「JavaScriptテクニックバイブル ~効率的な開発に役立つ150の技」という本が出ます。 - Keep on moving
- 「JavaScriptテクニックバイブル」という冒険の地図 - このブログの90%はガラクタ
- 「JavaScriptテクニックバイブル」の執筆の一部を担いました。 - rokujyouhitoma's blog
æ°ã«ãªãç®æ¬¡ã¯ãã¡ã
Chapter01ãéçºãåãå·»ãç°å¢ãæ¹åãã
1-1ãWebä¸ã§è¨è¿°ã»å®è¡ã»å ¬éãããµã¼ãã¹ãç¥ã
1-2ãVimã§ä¾¿å©ãªéçºç°å¢ãæ´ãã
1-3ãEmacsã§ä¾¿å©ãªéçºç°å¢ãæ´ãã
1-4ãWebStormã§éçºãè¡ã
1-5ãIE 8以éã§éçºè ãã¼ã«ã使ã£ããããã°ãè¡ã
1-6ãFiddlerã§HTTPéä¿¡ã®ãããã°ãè¡ã
1-7ãIEã®åãã¼ã¸ã§ã³ã§åä½ç¢ºèªããã
1-8ãFirefoxã§Firebugã使ã£ããããã°ãè¡ã
1-9ãWebInspectorã使ã£ããããã°ãè¡ã
1-10ãOperaã§DragonFlyã使ã£ããããã°ãè¡ã
1-11ãã¦ã¼ã¶ã¹ã¯ãªããã§æ¢åã®Webãµã¤ããã«ã¹ã¿ãã¤ãºãã
1-12ããã©ã¦ã¶æ¡å¼µãä½æãã
1-13ãããã¯ãã¼ã¯ã¬ãããä½æããChapter02ããããã°ææ³ãæ¹åãã
2-1ãå§ç¸®ãããã¹ã¯ãªãããèªã¿ããããã
2-2ãåææ¡ä»¶ã表æãã
2-3ãprintãããã°ãè¡ã
2-4ãConsole APIã使ã£ã¦ãããã°ãè¡ã
2-5ãæ¡ä»¶ä»ããã¬ã¼ã¯ãã¤ã³ããæ±ã
2-6ãã¹ãããå®è¡ãæ´»ç¨ãã
2-7ãå®è¡ä¸ã®ããæç¹ã§ã®å¤æ°ã®å¤ã調ã¹ã
2-8ãã³ã¼ãã®ãããã¡ã¤ã«ãè¡ã
2-9ãé¢æ°ãæ¡å¼µãã¦å¼æ°ã®ãããã¯ãè¡ã
2-10ãçºçããã¨ã©ã¼ããµã¼ãã«éç´ãã
2-11ãFirebugã®æ¡å¼µãå©ç¨ãã
2-12ãã¹ãã¼ããã©ã³ãã©ã¦ã¶ã®ãªã¢ã¼ããããã°ãè¡ãChapter03ããã¹ãç°å¢ãæ¹åãã
3-1ãQUnitã§ã¦ããããã¹ããè¡ã
3-2ãJasmineã§ã¦ããããã¹ããè¡ã
3-3ãSinon.JSã§ã¢ãã¯ãå©ç¨ãããã¹ããè¡ã
3-4ãPhantomJSã§ãã©ã¦ã¶ã使ããã«ãã¹ããè¡ã
3-5ãjs-test-driverã§è¤æ°ãã©ã¦ã¶ã§ã®åæãã¹ããè¡ã
3-6ãjscoverageã§ã³ã¼ãã«ãã¬ãã¸ã®æ¸¬å®ãè¡ã
3-7ãClosure Compilerã§åãã§ãã¯ãè¡ã
3-8ãJSHintã§ã³ã¼ãã£ã³ã°ã¹ã¿ã¤ã«ããã§ãã¯ãã
3-9ãJSDoc Toolkitãæ´»ç¨ãã¦ããã¥ã¡ã³ããè¨è¿°ãã
3-10ãSeleniumã§ç»é¢é·ç§»ãä¼´ããã¹ããè¡ã
3-11ãQUnit-TAPã§ãã¹ãçµæãTAPå½¢å¼ã§åºåãã
3-12ãJenkinsã§ãã¹ããCIã«çµã¿è¾¼ãChapter04ãé¢æ°ãæ´»ç¨ãã
4-1ã3種é¡ã®é¢æ°å®ç¾©ã®éããç解ãã
4-2ãä»»æã®ãªãã¸ã§ã¯ããthisã¨ãã¦å¥ã®é¢æ°ãå®è¡ãã
4-3ãJavaScriptã§ã®ãªãã¸ã§ã¯ãæåããã°ã©ãã³ã°ãç解ãã
4-4ãé¢æ°ã§å¯å¤é·å¼æ°ãæ±ã
4-5ããããã¿ã¤ããç解ãã
4-6ãé¢æ°ã¹ã³ã¼ããç解ãã
4-7ãåå空éãæ´»ç¨ãã
4-8ãé«éé¢æ°ãæ±ã
4-9ãååä»ãå¿åé¢æ°ã§å帰ãæ±ã
4-10ãé¢æ°ãªã¼ãã¼ãã¼ããå®ç¾ãã
4-11ãé¢æ°ã®ããã©ã«ãå¼æ°ãå®ç¾ãã
4-12ãã°ãã¼ãã«ã¹ã³ã¼ãã®æ±æãé²ã
4-13ãã°ãã¼ãã«ãªãã¸ã§ã¯ããåç §ãã
4-14ãå®å ¨ã«undefinedãåç §ãã
4-15ãé¢æ°ã®é¨åé©ç¨ãå®ç¾ãã
4-16ãwithæã®å±éºæ§ãç解ããChapter05ããããã¯ã¼ã¯éä¿¡ãæ¹åãã
5-1ãURIå½¢å¼ã§ã¨ã³ã³ã¼ãï¼ãã³ã¼ããè¡ã
5-2ãXMLHttpRequestãå©ç¨ãã
5-3ãXMLHttpRequest Level2ã§å¥ãã¡ã¤ã³ã¨éä¿¡ãã
5-4ãå®å ¨ã«ã¯ãã¹ãã¡ã¤ã³éä¿¡ãè¡ã
5-5ãJSONPã§ãã¼ã¿ãåå¾ãã
5-6ããã©ã¦ã¶ã®ãã£ãã·ã¥ãç¡è¦ãã
5-7ãç»åãdata URL schemeã§ã¤ã³ã©ã¤ã³åãã
5-8ãç»åã表示åã«ãã¦ã³ãã¼ããã
5-9ãJSONã¨JavaScriptãªãã¸ã§ã¯ãã®ç¸äºå¤æãè¡ã
5-10ãã¹ã¯ãªãããåçã«èªã¿è¾¼ã
5-11ãLABjsã§ã¹ã¯ãªããã®ä¸¦åèªã¿è¾¼ã¿ãè¡ã
5-12ãã¹ã¯ãªããã®èªã¿è¾¼ã¿æã«ä¾åé¢ä¿ã解決ãã
5-13ãWebSocketã§ãã¼ã¿ãåãåã
5-14ãServerSentEventsã§ãã¼ã¿ãåãåã
5-15ãç»é¢ã¹ã¯ãã¼ã«ã«ãããã¦ç»åãé 延èªã¿è¾¼ã¿ããChapter06ãã¿ã¤ãã¼ã»ã¤ãã³ããæ´»ç¨ãã
6-1ãã¤ãã³ããªã¹ãã¼ãæ´»ç¨ãã
6-2ãã¤ãã³ãä¼æãç解ãã
6-3ãããã¥ã¡ã³ãã®ãã¼ãæã«é¢æ°ãå®è¡ãã
6-4ããã¦ã¹ããã®å ¥åãæ±ã
6-5ããã¼ãã¼ãããã®å ¥åãæ±ã
6-6ããã©ãã°ã¢ã³ããããããå®ç¾ãã
6-7ãã«ã¹ã¿ã ã¤ãã³ãã§ã³ã¼ãã¨ã¤ãã³ããççµåã«ãã
6-8ãsetTimeoutã§æå®ããæéã®å¾ã«å¦çãå®è¡ãã
6-9ãsetIntervalã§æå®ããééã§å¦çãç¹°ãè¿ãå®è¡ãã
6-10ãã¿ã¤ãã¼ã使ã£ã¦UIã®ãããã¯ãåé¿ãã
6-11ã1ã¤ã®ã¿ã¤ãã¼ã§ã¢ãã¡ã¼ã·ã§ã³ã®å¶å¾¡ãè¡ã
6-12ãé »ç¹ã«å®è¡ãããé¢æ°ã®å®è¡ééã調æ´ãã
6-13ãã¹ãã¼ããã©ã³ã®åããæ¤ç¥ãã¦ç»é¢è¡¨ç¤ºãåãæ¿ãã
6-14ãã¿ããã¤ãã³ããæ´»ç¨ããChapter07ãçµã¿è¾¼ã¿ãªãã¸ã§ã¯ããæ´»ç¨ãã
7-1ãforEachãmapãªã©ã®å復ã¡ã½ãããç解ãã
7-2ãtypeofæ¼ç®åã§ãªãã¸ã§ã¯ãã®åå¤å¥ãè¡ã
7-3ãå¤ã®åå¤æãè¡ã
7-4ãæååãJavaScriptã¨ãã¦å®è¡ãã
7-5ãæ¥ä»ã¨æéãæ±ã
7-6ãä¾å¤å¦çãç解ãã
7-7ãé å風ãªãã¸ã§ã¯ãã«Arrayã®ã¡ã½ãããé©ç¨ãã
7-8ãæ£è¦è¡¨ç¾ã§æ¤ç´¢ã»ç½®æã»åå²ãè¡ã
7-9ãæåã¨æ°å¤ãçµåãã
7-10ãæååãæ´å½¢ãã
7-11ãé åãã½ã¼ããã
7-12ãé åãæä½ããChapter08ãããã©ã¼ãã³ã¹ãæ¹åãã
8-1ãå¦çé度ãè¨æ¸¬ãã
8-2ãç¶ç¶æ¸¡ãã¹ã¿ã¤ã«ã§æ¸ããã¨ã§UIã®ãããã¯ãåé¿ãã
8-3ã2åæ¢ç´¢ã§é åæ¤ç´¢é度ãåä¸ããã
8-4ãã¹ã¿ãã¯ã»ãã¥ã¼ãå®ç¾ãã
8-5ããã¼ã¿ã«ã¤ã³ããã¯ã¹ãè²¼ã£ã¦é«éã«æ¤ç´¢ãã
8-6ããªãã©ã«ã使ãäºã«ãã£ã¦é度æ¹åãã
8-7ãscriptã¿ã°ã®è¨è¿°ä½ç½®ã«ããéããç解ãã
8-8ãã¹ã³ã¼ããã§ã¼ã³ã®æç¸ã§é度æ¹åãè¡ã
8-9ãã¹ã¯ãªãããå§ç¸®ãã
8-10ãæååã®é£çµãé«éåãã
8-11ãè¤æ°ã®ç»åãã¾ã¨ãã¦èªã¿è¾¼ã
8-12ãYSlowã§ãã¼ã¸ã®èªã¿è¾¼ã¿é度ãè¨æ¸¬ãã
8-13ãDocumentFragmentã§DOMæ§ç¯ãé«éåããChapter09ãDOMãæ´»ç¨ãã
9-1ãNodeã¨Elementã®éããç解ãã
9-2ãCSS3ã§ã¢ãã¡ã¼ã·ã§ã³ãå®ç¾ãã
9-3ãCSSã»ã¬ã¯ã¿ã§DOMãèµ°æ»ãã
9-4ãDOMãã¼ã¹ã®ã¯ãã¹ãµã¤ãã¹ã¯ãªããã£ã³ã°ãé²ã
9-5ãåçã«è¦ç´ ã®ã¯ã©ã¹ãå¤æ´ãã
9-6ãåçã«ã¹ã¿ã¤ã«ã·ã¼ãã«ã¼ã«ãå¤æ´ãã
9-7ãè¦ç´ ã®ä½ç½®ããµã¤ãºãåå¾ãã
9-8ããã©ã¼ã ã®å¤ééä¿¡ãé²æ¢ãã
9-9ããã§ãã¯ããã¯ã¹ãæä½ãã
9-10ããã¼ã¸ä¸ã®ä»»æã®ä½ç½®ã¸ã¹ã¯ãã¼ã«ãã
9-11ãHTMLããã³ãã¬ã¼ãã§çæãã
9-12ãDOMè¦ç´ ãå¹çè¯ãã¢ãã¡ã¼ã·ã§ã³ããã
9-13ãContentEditableã§ç·¨éå¯è½ãªHTMLãä½ã
9-14ããã¼ã«ããããå©ç¨ãã
9-15ãããã¹ãã®é¸æç¯å²ãåå¾ããChapter10ãHTML5ãæ´»ç¨ãã
10-1ãå¤ããã©ã¦ã¶ã§æ°ããæ©è½ã使ã
10-2ãã»ã³ãµã¼ãå©ç¨ãã¦ããã¤ã¹ã®å¾ããæ¤åºãã
10-3ãHammer.jsã§ã¸ã§ã¹ãã£ã¼ãå¤å®ãã
10-4ãç»åãåç»ãcanvasã§å å·¥ãã
10-5ãGeolocation APIã§ä½ç½®æ å ±ãåå¾ãã
10-6ããªãã©ã¤ã³ã§ã¢ããªã±ã¼ã·ã§ã³ãåä½ããã
10-7ãWebSocketãå©ç¨ãã
10-8ã大éã®ãã¡ã¤ã«ãããã¯ã°ã©ã¦ã³ãã§èªã¿è¾¼ã
10-9ãã¯ã©ã¤ã¢ã³ããµã¤ãã«ãã¼ã¿ãä¿åãã
10-10ãpjaxãå©ç¨ãã
10-11ãè¦ç´ ã«ç¬èªã®ãã¼ã¿å±æ§ãå®ç¾©ãã
10-12ãgetterï¼setterãå®ç¾©ãã
10-13ãstrictã¢ã¼ããå©ç¨ãã
10-14ãvideoè¦ç´ ã§åç»ãåçãã
10-15ããã¹ã¯ãããéç¥ãå©ç¨ããChapter11ãã©ã¤ãã©ãªãæ´»ç¨ãã
11-1ãJSDeferredã§éåæå¦çãè¨è¿°ãã
http://gihyo.jp/book/2012/978-4-7741-5243-1
11-2ãBackbone.jsã§JavaScriptãæ§é åãã
11-3ãCoffeeScriptã§ã·ã³ãã«ã«JavaScriptãè¨è¿°ãã
11-4ãFlotr2ã§ã°ã©ãããã£ã¼ããæç»ãã
11-5ãGmapsã§Googleãããã表示ãã
11-6ãUnderscore.jsã®ä¾¿å©ãªé¢æ°ã使ç¨ãã
11-7ãjQueryã§UIãå¹ççã«ä½ã
11-8ãPrototype.jsã§åçWebãã¼ã¸ãä½ã
11-9ãSenchaã§ãªãããªã¹ãã¼ããã©ã³åããµã¤ããä½ã
11-10ãTitaniumã§ã¹ãã¼ããã©ã³ã¢ããªãä½ã
11-11ãClosure Toolsã§Webã¢ããªã±ã¼ã·ã§ã³ãéçºãã
11-12ãGlobalizeã§å½éåãè¡ã
11-13ãNode.jsã§ãµã¼ããµã¤ããJavaScriptã§è¨è¿°ãã
JavaScriptãã¯ããã¯ãã¤ãã«ã«ã¤ãã¦
å®éã®ã¨ãããã¼ãã¯ãã¾ãã¡ã¤ã³ã§JSãæ¸ããªãã®ã§ãJSã¨ãã¦ã®ãä½æ³ãã¨ãã£ã¦æ¯å調ã¹ããããããAã¨ããæ¹æ³ã¨Bã¨ããæ¹æ³ã©ã£ã¡ãè¯ãã®ããªï¼ããªãã¦ã®ãè¿·ããã¨ã¯ããã£ã¡ã ããªãã§ããã
ã¾ããèè ãã¾ã®ã¨ã³ããªã§ãæ¸ãã¦ããéããJSã®æ å ±ã¯å¤ãæ å ±ããããããã£ã¦ãã¤ãºã«ãªã£ãããããã¨ãå¤ãããæ£ç´ãªè©±ãä¿¡é ¼ã§ãããã©ããããããããªããããªããã°ã«è¡ãçããã¨ãå°ãªããªãã£ãããã¾ãã
ãããªæã«ãã®æ¬ãããã°ã ãã¶å¹çãå¤ãã£ã¦ããããªãã¨æããã§ããããæ¬å½ã«ããã£ã¨æ©ãç¥ãããã£ããã£ã¦æãã¾ããå 容ã¨ãã¦ã¯ãTipséã¨ãã¦ã®ä½è£ãªã®ã§ããããã¯ãã¯ããã¯ã«è¿ãæ¬ã«ãªã£ã¦ãã¾ãã
ã¼ããèªãã ä¸ã§ç¹ã«ããã¯ç¥ãããã£ãããã¨ããå 容ãä¸ããã¨ãããªæãã§ãããã
- Capter 4 å ¨è¬ã®ãªãã¸ã§ã¯ãã®ä½ææ¹æ³ãéãã«ã¤ãã¦
- Capter 5 ã®ãããã¯ã¼ã¯å¦çå ¨è¬ï¼ä¾ãã°ã¯ãã¹ãã¡ã¤ã³éä¿¡ã¨ãWebSocketãServerSentEventï¼
- 6-12ã®ã¤ãã³ãã®ééãéå¼ãã¹ãããã«ã®è©±ï¼ãããã¨æãã¤ãå²ã«ãæ¯åã°ã°ããâ¦â¦ï¼
- 8-7(scriptã¿ã°ã®è¨è¿°ä½ç½®ã«ããéã), 8-13(DOMæ§ç¯ã®é«éå)ãããã®ãªã使ãå¿ è¦ãããã®ããã¨ãã話ã¨ã
- 9-1 ã®Node ã¨Elementã®è©±
- 9-14ã®ã¢ãã³ãªãã¼ã«ãããã¨ã
- 10-10ã®pjaxã¨ã
- 11-4ã®ã°ã©ããæç»ããã©ã¤ãã©ãªã®ç´¹ä»ã¨ã
ä»ã«ãããã¹ãç³»ã®ã©ã¤ãã©ãªã®è©±ãéçºç°å¢ï¼ã¨ãã£ã¿ã¨ãï¼ã®è©±ãããã®ã§ãåèã«ããã¨ããããããã¨æãã¾ãã
èªãã çç´ãªææ³ã¨ãã¦ã¯ãããæ°ã«ãªããã¼ã£ã¦ããã®ããµãã¼ãããã¦ãã¦ã¨ã¦ãè¯ãã¨æãã¾ããããã³ãããªãã¨ãªãç¥ã£ã¦ãã¤ããã«ãªã£ã¦ããã¯ããã¼ãªJSå¼±è *1ã«ã¯å¿å¼·ãç¾ éç¤ã«ãªã£ã¦ãããæ¬ã¨ããã®ã¯å½ããªãã ãªã¨æãã¾ãã
JavaScriptãã¯ããã¯ãã¤ãã«ã¨ç§
cimadaiさんのエントリã§å°ãè¨åãããã¾ãã*2ããã¾ãã¾æè¡è©è«ç¤¾ã®æ å½è ããã¨ç¥ãåãæ©ä¼ããã£ã¦ãããã«若手IT勉強会ã§ã¯çµæ§é·ãJSã«ã¤ãã¦ã®åå¼·ä¼ãéãã¦*3ããã®ãã¬ãã¸ãã©ãã«ãã§ããªãããªãã¨ãã話ãããã¨ããããã³ãã³æåã«è©±ãé²ãã§ãã£ã¦æ¬ã®åºçã¨ããå½¢ã«ãªãã¾ããã
åèªèº«ã¯å·çã«ã¯é¢ãã£ã¦ããªãã®ã§ãããæ¡ã ãã®é ã«ã¡ãã£ã¨æã¡åããã«ãããã¾ããã¦è²°ã£ãããå·çå¾åã«ã¯ã¬ãã¥ã¼ã«åå ããã¦è²°ã£ããããã®ã§ãå人çã«ãæãå ¥ããããæ¬ã§ãã
ãããªããã§
9æã«ãªã£ããè¥æITåå¼·ä¼ã§æ¬æ¸ã®èªæ¸ä¼ãè¡ãããã§ãã
ããã¯æ¬ãè²·ã£ã¦åå ããããããã¾ããã!!*4
JavaScriptãã¯ããã¯ãã¤ãã« ~å¹ççãªéçºã«å½¹ç«ã¤150ã®æ
- ä½è : JSãµãã¼ã¿ã¼ãº
- åºç社/ã¡ã¼ã«ã¼: æè¡è©è«ç¤¾
- çºå£²æ¥: 2012/08/31
- ã¡ãã£ã¢: åè¡æ¬ï¼ã½ããã«ãã¼ï¼
- è³¼å ¥: 38人 ã¯ãªãã¯: 1,796å
- ãã®ååãå«ãããã° (11件) ãè¦ã
使ãç¨ã¨å¸æç¨ã¨ä¿åç¨ãã¿ããªè²·ãã!!ããã¦amazonã«ã¬ãã¥ã¼ãæ¸ãã!!