javascript块级作用域

var x=1;

(function(){

var x="inner";

alert(x);

var x = "undefined";

})();

alert(x);

我现在只知道,在(function(){....})()这样的结构中,会产生块级作用域。我的理解是只在那一个函数中,首先,在外面声明一个全局变量,x=1

那么最后的alert(x),输出也是1。

在函数里,假如没有声明x="inner",alert(x)就会弹出undefined,注意不是弹出下面的x="undefined"。很简单吧,是的,水平就这样。

typeof

typeof 運算子可按下列兩種方式來使用︰

1. typeof operand
2. typeof (operand)

typeof 運算子可返回字串,這些字串指出未求值的運算元的類型。operand 是指字串、變數、關鍵字、物件,其類型可被 typeof 返回。括弧並非必要的。

假設你定義了以下變數︰

var myFun = new Function("5+2")
var shape="round"
var size=1
var today=new Date()

typeof 運算子對以下變數返回以下結果︰

typeof myFun 返回的是 function
typeof shape 返回的是 string
typeof size 返回的是 number
typeof today 返回的是 object
typeof dontExist 返回的是 undefined

對於 truenull 關鍵字而言,typeof 運算子返回以下結果︰

typeof true 返回的是 boolean
typeof null 返回的是 object

對於數字或字串而言,typeof 運算子返回以下結果︰

typeof 62 返回的是 number
typeof 'Hello world' 返回的是 string

對於屬性值而言,typeof 運算子返回屬性裡的值的類型︰

typeof document.lastModified 返回的是 string
typeof window.length 返回的是 number
typeof Math.LN2 返回的是 number

對於方法和函數而言,typeof 運算子返回以下結果︰

typeof blur 返回的是 function
typeof eval 返回的是 function
typeof parseInt 返回的是 function
typeof shape.split 返回的是 function

對於預先定義的物件而言,typeof 運算子返回以下結果︰

typeof Date 返回的是 function
typeof Function 返回的是 function
typeof Math 返回的是 function
typeof Option 返回的是 function
typeof String 返回的是 function
posted @ 2011-04-22 16:21  e.e.p  阅读(254)  评论(0编辑  收藏  举报