在我畢生的追求中的函數寫在一行上我的全部代碼,並把所有的精神病維護者噩夢,我提出以下問題:調用變量聲明
有什麼辦法,我可以實例化一個對象,將其分配給一個變量,並在同一行上的實例化上調用一個函數?
如我:
var abc=new window();
window.show()
但我想沿着線的東西...
(var abc= new window).show()
在我畢生的追求中的函數寫在一行上我的全部代碼,並把所有的精神病維護者噩夢,我提出以下問題:調用變量聲明
有什麼辦法,我可以實例化一個對象,將其分配給一個變量,並在同一行上的實例化上調用一個函數?
如我:
var abc=new window();
window.show()
但我想沿着線的東西...
(var abc= new window).show()
我認爲qour問題的實質是:你可以用var
表達式裏面?
答案是否定的。一個var
聲明是一個聲明,而不是一個表達式。但括號內容必須是表達式。
如果你感興趣的技術細節,請參見http://ecma262-5.com/ELS5_HTML_with_CorrectionNotes.htm#AnnexA,A.3和A.4
編輯:但是,您可以使用
var abc;
(abc = new window()).show();
...這是相當我猜這裏毫無意義。
當然。使用匿名函數可以讓語句嵌入到您的表達式中:
var abc = (function (abc) { return abc.show(), abc }(new window));
這實際上是一個非常酷的主意! – Alex
您有沒有看過縮小的JavaScript?整個框架只能是一行「代碼」。 – rwilliams
不知道爲什麼這得到了downvoted。有了大腦,你可以意識到這個問題顯然是關於一個*聲明*,而不管行數。 – user123444555621
@ Pumbaa80從OP:「把我的整個代碼寫在一行上」,「在同一行上」。 – rwilliams