Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Base2
Search
othree
September 26, 2011
Programming
1
950
Base2
othree
September 26, 2011
Tweet
Share
More Decks by othree
See All by othree
How GitHub Supports Vim License Detection, The Five Years Journey
othree
1
2k
WAT JavaScript Date
othree
3
2k
Modern HTML Email Development
othree
3
2.6k
MRT & GIT
othree
1
2.2k
YAJS.vim and Vim Syntax Highlight
othree
1
2.8k
Web Trends to 2015
othree
4
320
Transducer
othree
9
3k
HITCON 11 Photographer
othree
4
480
fetch is the new XHR
othree
6
3.5k
Other Decks in Programming
See All in Programming
スタートアップの急成長を支えるプラットフォームエンジニアリングと組織戦略
sutochin26
1
5.9k
レベル1の開発生産性向上に取り組む − 日々の作業の効率化・自動化を通じた改善活動
kesoji
0
230
AIと”コードの評価関数”を共有する / Share the "code evaluation function" with AI
euglena1215
1
170
“いい感じ“な定量評価を求めて - Four Keysとアウトカムの間の探求 -
nealle
2
10k
Blazing Fast UI Development with Compose Hot Reload (droidcon New York 2025)
zsmb
1
290
ふつうの技術スタックでアート作品を作ってみる
akira888
1
870
生成AI時代のコンポーネントライブラリの作り方
touyou
1
220
効率的な開発手段として VRTを活用する
ishkawa
0
140
AIエージェントはこう育てる - GitHub Copilot Agentとチームの共進化サイクル
koboriakira
0
600
0626 Findy Product Manager LT Night_高田スライド_speaker deck用
mana_takada
0
180
Hypervel - A Coroutine Framework for Laravel Artisans
albertcht
1
130
『自分のデータだけ見せたい!』を叶える──Laravel × Casbin で複雑権限をスッキリ解きほぐす 25 分
akitotsukahara
2
640
Featured
See All Featured
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.4k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
281
13k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
740
Site-Speed That Sticks
csswizardry
10
690
For a Future-Friendly Web
brad_frost
179
9.8k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Side Projects
sachag
455
42k
Transcript
othree • http://blog.othree.net • ۃ၌Ҧஔ(JavaScript, (X)HTML, CSS, ....) • MightHappyDesigner
1
ʞʱᙒᑺʞɤੵҳᅂ˪ 2
DEMO 3
4
5
6
7
8
base2 A JavaScript Library by Dean Edwards 9
Dean Edwards 10
IE7.js ˢฆழIE7ᒔϘ 11
IE8.js ฆழIE8ᒔӚ̈ 12
base2 13
ʔԶਗतࣖ 14
ʔԶਗतࣖ ӚϞUIᗫ̌ঐ 15
ʔԶਗतࣖ ӚϞUIᗫ̌ঐ ʔ၍Ajax 16
ʔԶਗतࣖ ӚϞUIᗫ̌ঐ ʔ၍Ajax ԟՑֵϞʡჿk 17
੶JavaScriptႧԊ 18
һ࢙ක೯Application 19
base2 •Base •Map •Collection •RegGrp •Module •Package •Enumerable •JavaScript 20
base2 •Base •Map •Collection •RegGrp •Module •Package •Enumerable •JavaScript 21
Base 22
ᘱו 23
.prototype 24
Base.extend({k: v}) 25
Map, Collection, Enumerable 26
JavaScriptࡡԸӚϞ 27
Enumerable Map Collection every filter invoke map pluck reduce some
add getAt item putAt removeAt reverse sort copy forEach get getKeys getValues has merge 28
RegGrp • ɓࡈRegular Expressionي • εଡ଼pattern, replacement 29
JavaScript • Array2 • Date2 • String2 30
Array2 • pop • push • contains • sort, reverse
• filter • ...... 31
Date2 • toISOString • now • parse 32
Date2 • toISOString • now • parse 32 (“2008/03/29”)
String2 • trim 33
Cast in Native Object • base2.JavaScript.bind(window); 34
base2.DOM 35
Yet Another JS Lib Without Document 36
ࡌ͍ᓭᚎኜ፹Ⴌ 37
อᅺྼЪ 38
• view.getComputedStyle() • node.compareDocumentPosition() • document.activeElement (HTML5) • document.createEvent() •
document|element.addEventListener() • document|element.removeEventListener() • document|element.dispatchEvent() • document|element.querySelector() • document|element.querySelectorAll() 39
• view.getComputedStyle() • node.compareDocumentPosition() • document.activeElement (HTML5) • document.createEvent() •
document|element.addEventListener() • document|element.removeEventListener() • document|element.dispatchEvent() • document|element.querySelector() • document|element.querySelectorAll() 39
• element.ownerDocument • element.getAttribute() • element.hasAttribute() • element.matchesSelector() • element.setAttribute()
40
• event.target • event.relatedTarget • event.initEvent() • event.preventDefault() • event.stopPropagation()
• style.getPropertyValue() • style.setProperty() 41
Rules for JavaScript Library Authors http://dean.edwards.name/weblog/2007/03/rules/ 42
ഐሞ 43
ၾʔΝٙJS Lib 44 Ꮠ༈ܘϞ͜
ҢӚί͜ 45
Ңɰʔٝ༸Ϟም͜ 46
νО՟ 47
google://base2 48
http://code.google.com/p/base2/ 49
Thanks For Your Attention 50