关于对象内 创建 this 的问题(应用于Enum) 看来这个问题好像不可能解决...非 new 对象中, this 是 window函数 中 函数 this 是指上一级.... 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 俺是错滴...<script type="text/javascript">//<![CDATA[ function l1() { this._var = 1 var tt = new l1_1(); return tt; function l1_1() { this._var1 = 2; function l1_1_1() { alert(this._var) } } } var t = new l1(); alert(t._var1)//]]></script> 问题解决...<script type="text/javascript">//<![CDATA[ // shawl.qiu JavaScript Document /*-----------------------------------------------------------------------------------*\ * shawl.qiu Enum class v1.0 \*-----------------------------------------------------------------------------------*/ //---------------------------------begin class Enum()-------------------------------// function Enum() { // shawl.qiu code //------------------------------------begin public variable //------------------------------------end public variable //------------------------------------begin private variable //---------------begin about var Au = {}; Au.Subject = "shawl.qiu Enum class"; Au.Version = "v1.0"; Au.Name = "shawl.qiu"; Au.Email = "[email protected]"; Au.Blog = "http://blog.csdn.net/btbtd/"; Au.CreatedDate = "2007-7-31"; Au.Update = {}; Au.Update["1"] = ""; //---------------end about var This = this; var Arg = arguments; //------------------------------------begin private method function fGetAu() { return Au; } function fFatalError(sMsg) {// shawl.qiu code : void return if(!sMsg) sMsg = "发生致命错误!"; throw new Error(sMsg); } // end function fFatalError function fGetEnum() { var This = this; var ArgLen = Arg.length; var Index = 0; //alert(Arg.length) if(ArgLen>0) { for(var i=0; i<ArgLen; i++) { Arg[i] += ""; if(Arg[i].indexOf("=")>-1) { var TempAr = Arg[i].split("="); if(TempAr.length!=2) { throw new Error(["枚举类型: ", Arg[i], " 初始化出错!"].join('')); } var iTemp = parseInt(TempAr[1]); if(isNaN(iTemp)) { throw new Error(["枚举类型: ", Arg[i], " 初始值出错!"].join('')); } This[TempAr[0]] = iTemp; Index = ++iTemp; } else { This[Arg[i]] = Index++; } } } else { fFatalError("枚举类型必须有初始参数!"); } return This; } //------------------------------------end private method return new fGetEnum(); //------------------------------------begin initer //------------------------------------end initer } // shawl.qiu code //---------------------------------end class Enum()---------------------------------// var eu = new Enum("a=10", "b", "c"); fTest(eu); function fTest(oEnum) { for(var k in oEnum) { document.write("Key: ", k, "<br/>"); document.write("oEnum[", k, "]: ", oEnum[k], "<p/>"); } document.write("<hr/>"); } var eu = Enum("a=10", "b", "c"); fTest(eu); function fTest(oEnum) { for(var k in oEnum) { document.write("Key: ", k, "<br/>"); document.write("oEnum[", k, "]: ", oEnum[k], "<p/>"); } document.write("<hr/>"); }//]]></script> 求解javascript加载数据问题。。 iframe 动条显示滚动条 怎么样将用户修改过的页面保存下来啊? 正则表达式问题? 购物车 求最准确的校验email格式的正则表达式 导航栏的这种效果怎么实现 怎么才能知道客户端office版本? 请问在javascript中如何使一张图片重定向到另外一张图片?谢谢! 问一个前端JS问题 怎样用JS控制 IFRAME的内容页面 左右滚动? 在线等!!谢谢 text value 变化的问题
<script type="text/javascript">
//<![CDATA[
function l1()
{
this._var = 1
var tt = new l1_1();
return tt;
function l1_1()
{
this._var1 = 2;
function l1_1_1()
{
alert(this._var)
}
}
}
var t = new l1();
alert(t._var1)
//]]>
</script>
//<![CDATA[
// shawl.qiu JavaScript Document
/*-----------------------------------------------------------------------------------*\
* shawl.qiu Enum class v1.0
\*-----------------------------------------------------------------------------------*/
//---------------------------------begin class Enum()-------------------------------//
function Enum()
{ // shawl.qiu code
//------------------------------------begin public variable
//------------------------------------end public variable
//------------------------------------begin private variable
//---------------begin about
var Au = {};
Au.Subject = "shawl.qiu Enum class";
Au.Version = "v1.0";
Au.Name = "shawl.qiu";
Au.Email = "[email protected]";
Au.Blog = "http://blog.csdn.net/btbtd/";
Au.CreatedDate = "2007-7-31";
Au.Update = {};
Au.Update["1"] = "";
//---------------end about
var This = this;
var Arg = arguments; //------------------------------------begin private method
function fGetAu()
{
return Au;
}
function fFatalError(sMsg)
{// shawl.qiu code : void return
if(!sMsg) sMsg = "发生致命错误!";
throw new Error(sMsg);
} // end function fFatalError
function fGetEnum()
{
var This = this;
var ArgLen = Arg.length;
var Index = 0;
//alert(Arg.length)
if(ArgLen>0)
{
for(var i=0; i<ArgLen; i++)
{
Arg[i] += "";
if(Arg[i].indexOf("=")>-1)
{
var TempAr = Arg[i].split("=");
if(TempAr.length!=2)
{
throw new Error(["枚举类型: ", Arg[i], " 初始化出错!"].join(''));
}
var iTemp = parseInt(TempAr[1]);
if(isNaN(iTemp))
{
throw new Error(["枚举类型: ", Arg[i], " 初始值出错!"].join(''));
}
This[TempAr[0]] = iTemp;
Index = ++iTemp;
}
else
{
This[Arg[i]] = Index++;
}
}
}
else
{
fFatalError("枚举类型必须有初始参数!");
}
return This;
}
//------------------------------------end private method
return new fGetEnum();
//------------------------------------begin initer //------------------------------------end initer
} // shawl.qiu code
//---------------------------------end class Enum()---------------------------------//
var eu = new Enum("a=10", "b", "c");
fTest(eu); function fTest(oEnum)
{
for(var k in oEnum)
{
document.write("Key: ", k, "<br/>");
document.write("oEnum[", k, "]: ", oEnum[k], "<p/>");
}
document.write("<hr/>");
}
var eu = Enum("a=10", "b", "c");
fTest(eu); function fTest(oEnum)
{
for(var k in oEnum)
{
document.write("Key: ", k, "<br/>");
document.write("oEnum[", k, "]: ", oEnum[k], "<p/>");
}
document.write("<hr/>");
}
//]]>
</script>