if (!this.Piwik) {
////1.这是代码的开头部分,做if(!this.Piwik)是用来干嘛的///////////
/////////Piwik singleton and namespace/////////////
Piwik = (function () {
///////2.能这样创建函数(对象?)?那调用的时候是Piwik.函数名()的格式吗?/////////
/************************************************************
* Private data
************************************************************/ var expireDateTime, /* plugins */
plugins = {}, /* alias frequently used globals for added minification */
documentAlias = document,
navigatorAlias = navigator,
screenAlias = screen,
windowAlias = window,
/////3.这四个变量是赋给的是什么值?Dom的对象名?是不是这样赋值后以后可以直接写成documentAlias.write()//////////////////////////
/* DOM Ready */
hasLoaded = false,
registeredOnLoadHandlers = [];
//下面还有,不贴了,问题主要在上面这段里
if (!this.Piwik) {
////若this.Piwik未定义,则执行if下的code,避免重复定义///////////
/////////Piwik singleton and namespace/////////////
Piwik = (function () {
///////这个是javascript的匿名函数,调用的话Piwik()/Piwik.call(this,args,...)/Piwik.apply(this,[argArray])/////////
/************************************************************
* Private data
************************************************************/ var expireDateTime, /* plugins */
plugins = {}, /* alias frequently used globals for added minification */
documentAlias = document,
navigatorAlias = navigator,
screenAlias = screen,
windowAlias = window,
/////这四个变量作为了DOM对象的引用,这样赋值后以后可以在匿名函数内直接写成documentAlias.write()//////////////////////////
/* DOM Ready */
hasLoaded = false,
registeredOnLoadHandlers = [];
//下面还有,不贴了,问题主要在上面这段里