???1, 關于對象中屬性的存取,javascript也體現了他的靈活性,你可以像java樣用.讀取,也可以數組方式存取。如:
var o = {x:1,y:2};
document.write(o.x);
document.write(o["x"]);
第一種方式中,點操作符后面跟著的是標示符,它是固定的,不可變得。在第二種方式中,中括號中是個string型的表達式,因此它是動態的,可變的。任何結果是"x"的表達式都可以。如:
var s = "x";
document.wrinte(o[s]);
輸出同樣的結果。
如果用戶要讀取的屬性是不確定的,要根據用戶的輸入來確定,那么第二種寫法就顯得方便多了。
2,? 前面曾經講過javascript中函數的參數可以是任意的,即使你定義了兩個參數,在實際調用的時候,你可以輸入任意個參數。這樣做雖然很靈活,可以讓我們少寫幾個函數,但如果我們規定這個函數必須使用2個參數,否則就要拋出異常,那該怎么辦呢,js還有個arguments對象,它里面存放了調用時傳入的參數,你可以已數組的方式存取,如arguments[0],arguments[1]等,但它不是個數組對象,沒有數組的一些方法,如split,sort等等。
????? 那么我能不能知道函數定義時定義的參數的個數呢?function有個length屬性,就是表明定義時函數的參數個數。可以通過arguments.callee.length 或 functionName.length得到。
posted on 2006-09-14 19:59
Aaron.Chu 閱讀(183)
評論(0) 編輯 收藏