代码如下:
if (true) {
int i = 100;
}
print(i); //错误,变量i没有声明
代码如下:
if (true) {
var i = 100;
}
alert(i); //弹出框并显示100
代码如下:
var bankAccount = function () {
var value = 0;
return {
deposit: function (inc) {
value += inc;
},
getValue: function (){
return value;
}
}
}
var myAccount = bankAccount(); //新开一个银行账户
myAccount.deposit(1000); //存1000块进去
alert(myAccount.getValue()); //should alert(1000);
代码如下:
(function () {
var hello = 'Hello World.';
})();
alert(hello); //error: hello no exist.
代码如下:
(function () {
hello = 'Hello World.'; //remove var
})();
alert(hello); //alert ('Hello World.');
代码如下:
(function () {
var hello = 'Hello World.';
sayHello = function () { //不建议采用这种方式来提供接口,看起来很不明显。
alert(hello);
}
})();
sayHello();
代码如下:
(function (window) {
var hello = 'Hello World.';
window.$ = {
sayHello: function () {
alert(hello);
}
};
})(window);
$.sayHello(); //看起来像jQuery那么酷
代码如下:
var obj = (function () {
var hello = 'Hello World.';
return {
sayHello: function () {
alert(hello);
}
};
})();
obj.sayHello();
代码如下:
(function () { //函数a
var arr = [];
var i = 0;
var j;
for ( ; i < 3; i++) {
arr.push(function () { //函数b
alert(i * 10);
});
}
for (j in arr) {
arr[j]();
}
})();
代码如下:
(function () { //函数a
var arr = [];
var i = 0;
var j;
for ( ; i < 3; i++) {
arr.push((function (anotherI) { //函数m
return function () { //函数b
alert(anotherI * 10);
}
})(i)); // 此处为(function b(anotherI) {})(i)
}
for (j in arr) {
arr[j]();
}
})();