在function内部,用var来定义私有变量,这种变量只能在function内部使用。function内部按通常的方法定义的function,也是私有的,只能在内部使用。
而用this.varname来定义的变量,时公有的。
写了个简单的例子,你看看应该就明白了。
--------------------------------------
<script type="text/javascript">
function testFunction() {
var var1 //定义private变量
this.var2 = 'haha' //这样定义的是public变量
//下面的是private函数
function func1(text) {
alert(text)
}
//下面这样就成了public函数
this.func2 = function(text) {
func1(text)
}
}
var test = new testFunction()
var msg = 'typeof(testFunction) = ' + typeof(testFunction)
msg += '\r\n' + 'typeof(test) = ' + typeof(test)
msg += '\r\n' + 'typeof(test.var1) = ' + typeof(test.var1)
msg += '\r\n' + 'typeof(test.var2) = ' + typeof(test.var2)
msg += '\r\n' + 'typeof(test.func1) = ' + typeof(test.func1)
msg += '\r\n' + 'typeof(test.func2) = ' + typeof(test.func2)
alert(msg)
test.func2(test.var2)
</script>
----------------------------------------------------------------------
这个不难:var key = RSAUtils.getKeyPair(exponent, '', modulus)//modulus 是解密钥匙
var updPwd=RSAUtils.encryptedString(key, password)//password 你要加密的密码
然后只要保存updPwd到数据库就可以了。
最难的是函数是对象,函数又不仅仅是对象,还可以做面向对象中的类使用。数组可以是对象集合,数组也可以是函数集合。
对象变化又过于灵活。所以要想深入学习,不在于语法,学会语法之后更需多加练习多加体会。
从 基本的对象方法、事件、属性
到 函数调用 匿名函数
到 JSON
到 函数套用 匿名函数套用 闭包
到 prototype
需要不断地学习和体会。