IT戦記

プログラミング、起業などについて書いているプログラマーのブログです😚

各種JSライブラリのグローバル書き換え状況

先日、JS O Lait と Prototype.js が両方とも Class オブジェクトを作っていて、一緒に使えないとわかったので。各種ライブラリがどのくらいグローバルな情報をクラックしているかの調査しました。

↓結果

Prototype.js(1.4.0)

window
  • Prototype
  • Class
  • Abstract
  • Try
  • PeriodicalExecuter
  • $
  • $break
  • $continue
  • Enumerable
  • $A
  • Hash
  • $H
  • $R
  • Ajax
  • Toggle
  • Insertion
  • Field
  • Form
  • $F
  • Position
  • property
  • ObjectRange
Object
  • extend
  • inspect
  • bind
  • bindAsEventListener
Array
  • from
  • bind
  • bindAsEventListener
Array_prototype
  • each
  • all
  • any
  • collect
  • detect
  • findAll
  • grep
  • include
  • inject
  • invoke
  • max
  • min
  • partition
  • pluck
  • reject
  • sortBy
  • toArray
  • zip
  • inspect
  • map
  • find
  • select
  • member
  • entries
  • _reverse
  • _each
  • clear
  • first
  • last
  • compact
  • flatten
  • without
  • indexOf
Boolean
  • bind
  • bindAsEventListener
Date
  • bind
  • bindAsEventListener
Function
  • bind
  • bindAsEventListener
Function_prototype
  • bind
  • bindAsEventListener
Number
  • bind
  • bindAsEventListener
Number_prototype
  • toColorPart
  • succ
  • times
RegExp
  • bind
  • bindAsEventListener
String
  • bind
  • bindAsEventListener
String_prototype
  • stripTags
  • stripScripts
  • extractScripts
  • evalScripts
  • escapeHTML
  • unescapeHTML
  • toQueryParams
  • toArray
  • camelize
  • inspect
  • parseQuery
Event
  • KEY_BACKSPACE
  • KEY_TAB
  • KEY_RETURN
  • KEY_ESC
  • KEY_LEFT
  • KEY_UP
  • KEY_RIGHT
  • KEY_DOWN
  • KEY_DELETE
  • element
  • isLeftClick
  • pointerX
  • pointerY
  • stop
  • findElement
  • observers
  • _observeAndCache
  • unloadCache
  • observe
  • stopObserving

Script.aculo.us(1.5.0)

window
  • Scriptaculous
  • Builder
  • Effect
  • Effect2
  • Droppables
  • Draggables
  • Draggable
  • SortableObserver
  • Sortable
  • Autocompleter
  • Control
Array_prototype
  • call
String_prototype
  • parseColor

Rico(1.1.0)

window
  • Rico
  • ajaxEngine
  • dndMgr
  • RicoUtil
  • extend
Object_prototype
  • extend
Array
  • extend
Array_prototype
  • remove
  • removeItem
  • indices
  • extend
Boolean
  • extend
Boolean_prototype
  • extend
Date
  • extend
Date_prototype
  • extend
Function
  • extend
Function_prototype
  • extend
Math
  • extend
Number
  • extend
Number_prototype
  • extend
RegExp
  • extend
RegExp_prototype
  • extend
String
  • extend
String_prototype
  • extend
Event
  • extend
Event_prototype
  • extend

JS O lait(今日最新のもの)

window
  • globalEval
  • Class
  • Module
  • jsolait
  • importModule
  • reportException
  • Range
  • fora
  • forin
  • toJSON
Object
  • toJSON
Object_prototype
  • toJSON
Array
  • toJSON
Array_prototype
Boolean
  • toJSON
Boolean_prototype
  • toXmlRpc
  • toJSON
Date
  • toJSON
Date_prototype
  • toXmlRpc
  • toJSON
Function
  • toJSON
Function_prototype
  • toJSON
Math
  • toJSON
Number
  • toJSON
Number_prototype
  • toXmlRpc
  • toJSON
RegExp
  • toJSON
RegExp_prototype
  • toJSON
String
  • toJSON
String_prototype
  • format
  • pad
  • mul
  • toXmlRpc
  • toJSON
  • encrypt
  • decrypt
  • encrypt_xor
  • decrypt_xor
  • encrypt_rc4
  • decrypt_rc4
  • decode
  • encode
  • decode_base64
  • encode_base64
  • decode_uri
  • encode_uri
Event
  • toJSON
Event_prototype
  • toJSON

Mochikit(1.1)

window
  • MochiKit
  • compare
  • counter
  • clone
  • extend
  • update
  • updatetree
  • setdefault
  • keys
  • items
  • NamedError
  • operator
  • itemgetter
  • typeMatcher
  • isCallable
  • isUndefined
  • isUndefinedOrNull
  • isNull
  • isNotEmpty
  • isArrayLike
  • isDateLike
  • xmap
  • map
  • xfilter
  • filter
  • bind
  • bindMethods
  • NotFound
  • AdapterRegistry
  • registerComparator
  • registerRepr
  • repr
  • objEqual
  • arrayEqual
  • concat
  • keyComparator
  • reverseKeyComparator
  • partial
  • merge
  • listMinMax
  • listMax
  • listMin
  • objMax
  • objMin
  • nodeWalk
  • zip
  • urlEncode
  • queryString
  • serializeJSON
  • registerJSON
  • evalJSON
  • parseQueryString
  • nameFunctions
  • comparatorRegistry
  • reprRegistry
  • jsonRegistry
  • compareDateLike
  • compareArrayLike
  • reprArrayLike
  • reprString
  • reprNumber
  • reduce
  • StopIteration
  • registerIteratorFactory
  • iter
  • count
  • cycle
  • repeat
  • next
  • izip
  • ifilter
  • ifilterfalse
  • islice
  • imap
  • applymap
  • chain
  • takewhile
  • dropwhile
  • tee
  • list
  • range
  • sum
  • exhaust
  • forEach
  • every
  • sorted
  • reversed
  • some
  • iextend
  • groupby
  • groupby_as_array
  • iteratorRegistry
  • arrayLikeIter
  • hasIterateNext
  • iterateNextIter
  • LogLevel
  • LogMessage
  • Logger
  • alertListener
  • logger
  • log
  • logError
  • logDebug
  • logFatal
  • logWarning
  • logLevelAtLeast
  • isLogMessage
  • compareLogMessage
  • isoDate
  • isoTimestamp
  • toISOTime
  • toISOTimestamp
  • toISODate
  • americanDate
  • toPaddedAmericanDate
  • toAmericanDate
  • truncToFixed
  • roundToFixed
  • numberFormatter
  • formatLocale
  • twoDigitAverage
  • twoDigitFloat
  • percentFormat
  • lstrip
  • rstrip
  • strip
  • AlreadyCalledError
  • CancelledError
  • BrowserComplianceError
  • GenericError
  • XMLHttpRequestError
  • Deferred
  • succeed
  • fail
  • getXMLHttpRequest
  • doSimpleXMLHttpRequest
  • loadJSONDoc
  • wait
  • callLater
  • sendXMLHttpRequest
  • DeferredLock
  • evalJSONRequest
  • formContents
  • currentWindow
  • currentDocument
  • withWindow
  • withDocument
  • registerDOMConverter
  • coerceToDOM
  • createDOM
  • createDOMFunc
  • getNodeAttribute
  • setNodeAttribute
  • updateNodeAttributes
  • appendChildNodes
  • replaceChildNodes
  • removeElement
  • swapDOM
  • BUTTON
  • TT
  • PRE
  • H1
  • H2
  • H3
  • BR
  • HR
  • LABEL
  • TEXTAREA
  • FORM
  • SELECT
  • OPTION
  • OPTGROUP
  • LEGEND
  • FIELDSET
  • P
  • UL
  • OL
  • LI
  • TD
  • TR
  • THEAD
  • TBODY
  • TFOOT
  • TABLE
  • TH
  • INPUT
  • SPAN
  • A
  • DIV
  • IMG
  • getElement
  • $
  • computedStyle
  • getElementsByTagAndClassName
  • addToCallStack
  • addLoadEvent
  • focusOnLoad
  • setElementClass
  • toggleElementClass
  • addElementClass
  • removeElementClass
  • swapElementClass
  • hasElementClass
  • escapeHTML
  • toHTML
  • emitHTML
  • setDisplayForElement
  • hideElement
  • showElement
  • scrapeText
  • domConverters
  • createLoggingPane
  • LoggingPane
  • Color
  • clampColorComponent
  • rgbToHSL
  • hslToRGB
  • rgbToHSV
  • hsvToRGB
  • toColorPart
  • roundElement
  • roundClass

Dojo AJAX Edition(今日最新のもの)

window
  • dj_global
  • dj_undef
  • djConfig
  • dojo
  • dj_debug
  • dj_eval
  • DJ_XMLHTTP_PROGIDS
  • dj_addNodeEvtHdlr
  • dj_rethrow
  • dj_throw
  • dj_unimplemented
  • dj_deprecated
  • dj_inherits
  • root
  • dojo_ie_clobber


Rico と jsolait は禁断の Object.prototype 書き換えをしている!