1.函数和过程的区别?过程和函数区别如下:1、标识符不同:函数的标识符为FUNCTION,过程为:PROCEDURE。2、话法不同:函数中一般不用变量形参,用函数名直接返回函数值;而过程如有返回值,则必须用变量形参返回。3、函数在定义时一定要进行函数的类型说明,过程则不进行过程的类型说明。4、调用方式不同:函数的调用出现在表达式中,过程调用,由独立的过程调用语句来完成。5、过程一般会被设计成求若干个运算结果,完成一系列的数据处理,或与计算无关的各种操作;而函数往往只为了求得一个函数值。2.Javascript如何实现继承?1.采用对象冒充方式:原理:构造函数使用this关键字给所有属性和方法赋值,因为构造函数只是一个函数,所以可以使ClassA的构造函数成为classB的方法,然后调用它.这样classB就会收到classA的构造函数中定义的属性和方法.例子:2.例:functionclassA(name){this.name=name;this.showName=function(){alert(this.name);}}functionclassB(name){this.newMethod=classA;this.newMethod(name);}obj=newclassA("hero");objB=newclassB("dby");obj.showName();//printheroobjB.showName();//printdby说明classB继承了classA的方法.3.定义一个变量,Varv=newObject(),用js编写的简便写法是什么?varv={};4.javascript取浏览器的版本里面还有哪些对象?functiongetBrowser(){varbro=navigator.userAgent.toLowerCase();if(/msie/.test(bro))return'IE'+bro.match(/msie([\d.]*);/)[1]elseif(/navigator/.test(bro))return'NS'+bro.match(/navigator\/([\d.]*)/)[1]elseif(/chrome/.test(bro))return'CR'+bro.match(/chrome\/([\d]*)/)[1]elseif(/safari/.test(bro))return'SF'+bro.match(/version\/([\d]*)/)[1]elseif(/opera/.test(bro))return'OP'+bro.match(/version\/([\d]*)/)[1]elseif(/firefox/.test(bro))return'FF'+bro.match(/firefox\/([\d]*)/)[1]}