命名空间namespace
"use strict"
var MYAPP = MYAPP || {} // 检查MYAPP是否已经被定义了
MYAPP.commonMethod = {
regExForName: "",
regExForPhone: "",
validateName: function(name){
//
}
}
标准内置对象
console.log
实际上不是 JavaScript 自带的
定义类 class
function Person(name){
// alert("person instantiated")
// 每一个对象实例有若干个属性. (重要)
// 为了正确的继承,属性应该被定义在类的原型属性 (函数)中。
this.name = name
}
定义方法和属性
为定义一个方法, 需要将一个函数赋值给类的 prototype
属性
Person.prototype.sayhello = function() {
console.log("hello, I'am " + this.name)
}
var person1 = new Person("drsky")
var person2 = new Person("su")
var helloFunction = person1.sayhello
// alert("person1's name is " + person1.name)
person1.sayhello() //注意属性和方法调用的方式不同
person2.sayhello()
helloFunction() // this --> window , 所以提示undefined或者在严格模式下报错