在程序语言里面就使用API这个行为来讲,可拆解为两个操作:取得API接口和运行API功能
例如:书本具有传授知识的功能,这里就好比一个API,学生拿出某个课本学习,就相当于取得API,学习通过课本学习到了知识,就是运行API的功能。
在程序语言里取得API接口操作,一般有两种方式:静态引用和动态引用
1.静态引用
这里我们拿Javascript当中的alert()函数来进行说明,它就是典型的静态引用,下面就是它的执行过程
①在浏览器上运行HTML网页时候,浏览器会创建用来运行网页的HTML运行环境(HTML Context),这个环境中包含各种运行HTML网页使用的资源
②HTML运行环境的资源里,预先创建了静态引用提供的API。例如,以函数接口来提供显示对话框功能的alert函数
③HTML网页里的程序代码,可以直接取得HTML运行环境提供的alert函数
④HTML网页里的程序代码运行alert函数功能,用来显示对话框,提示信息给用户
2.动态引用
在javascript中,XMLHttpRequest对象就属于很典型的通过动态引用来取得API接口的方式。在Javascript中,开发人员可以使用XMLHttpRequset对象,通过Http通信
协议来跟远程服务器创建链接并传递数据。使用XMLHttpRequest对象时,必须创建一个XMLHttpRequest对象,来取得XMLHttpRequest对象,再通过XMLHttpRequest对象,
运行XMLHttpRequest对象提供的功能。
①在浏览器上运行HTML网页时候,浏览器会创建用来运行网页的HTML运行环境(HTML Context),这个环境中包含各种运行HTML网页使用的资源
②HTML运行环境的资源里,不会预先创建动态引用提供的API。例如,以对象接口来提供与远程服务器通信的XMLHttpRequest对象
③HTML网页里的程序代码,在HTML运行环境内创建一个XMLHttpRequest对象,并且取得XMLHttpRequest对象
④HTML网页里的程序代码运行XMLHttpRequest对象的功能,用来通过HTTP通信协议来跟远程服务器创建连接并且传递数据
总结:
通过以上两个事例的学习,可以类比C#语言当中的静态类和普通类,C#当中静态类在使用时候,程序在开始运行的时候就已经初始化完成了,我们可以直接类名.方法名来调用
非静态类在使用的时候,一定要先创建实例才可以进行使用类的属性或者方法。
参考文献:《HTML&CSS3&javascript App程序开发实战》 周庆忠 陈葵懋