JavaScript的一些重要特性
<script language="javascript">/*面向对象编程例子对象继承通常有下面的5种方式: 1.对象冒充 2.call()方式 3.apply()方式 4.原型链 5.混合方式*/var Person = function (name,age,sex){this.name = name;this.age = age;this.sex = sex;this.display = function(){return "I'm name is "+this.name+","+this.age+","+this.sex;}}/*Person.prototype.display = function(){return "I'm name is "+this.name+","+this.age+","+this.sex;}*///子类继承Person父类var MalePerson = function (name,age,sex){Person.call(this);this.name = name;this.age = age;this.sex = sex;}var person = new Person('alex',24,'male');alert(person.display());var maleperson = new MalePerson('lucy',18,'female');alert(maleperson.display());/*json数据格式例子和XML一样,JSON也是基于纯文本的数据格式。由于它天生是为JavaScript等一些Script语言准备的,因此其数据的格式非常简单,你可以用JSON传输一个简单的字符串、数字、布尔值、数组,或者一个复杂的Object对象。String,Number 和 Boolean 用 JSON 表示非常简单。例如,用 JSON 表示一个简单的 String “ abc ”,其格式为:“abc”。JSON还可以表示一个数组对象,使用[ ] 包含所有元素,每个元素用逗号分隔,元素可以是任意类型.Object对象在JSON中是用{}包含一系列无序的Key-Value键值对表示的,实际上此处的Object相当于Java中的Map<String, Object>,而不是Java的Class。注意Key只能用String表示。*/var j = [ "abc", 123, false , null];alert(j[2]);var json1 = {"name":'alex',"age":24,"sex":'male'};alert(json1.name+","+json1.age+","+json1.sex);var json2 = { "name": "Samson" , "address": { "city" : "ShangHai" , "street" : "YiJiang Road", "postcode": 202014 }}alert(json2.address.city);/*闭包例子把闭包简单理解成"定义在一个函数内部的函数",闭包就是将函数内部和函数外部连接起来的一座桥梁.闭包的作用:1.可以读取函数内部的变量 2.让这些变量的值始终保持在内存中。*/function f1(){var n=999; nAdd = function(){n+=1};function f2(){alert(n);} return f2;}var result=f1();result(); // 999nAdd();result(); // 1000</script>