3_1_1.JS--函数 函数function是一段预定义好的可以被反复使用的代码块其中包含多条可执行语句。使用关键字function声明一个函数命名规则与变量一致都要符合标识符命名规则函数的声明与调用script //使用函数向页面输出两数和 var a7,b7; function sum(){ var addab; document.write(add) } sum(); /script函数的返回值script //使用函数返回值向页面输出两数和 var a7,b7; function sum(){ addab; return add; } var csum(); console.log(c) /script函数的参数函数的参数是函数执行过程中用于接收实际数据的变量只不过不需要使用var声明。函数通过return关键字来返回函数执行的结果script //含参数的两数和 function add(n1,n2){ return n1n2; } var aparseInt(prompt(请输入第一个数));//注意如果不强制转换输入的则是string类型的。 var bparseInt(prompt(请输入第二个数)); cadd(a,b); alert(两数和是c) /script script //比较三个数的大小 function getMax(n1,n2,n3){ var nmax; //逻辑短路或者用条件运算表达式 (n1n2)(n1n3)(nmaxn1); (n2n1)(n2n3)(nmaxn2); (n3n1)(n3n2)(nmaxn3); return nmax; } var aparseInt(prompt(请输入第一个数)); var bparseInt(prompt(请输入第二个数)); var cparseInt(prompt(请输入第三个数)); alert(三个数中最大的是getMax(a,b,c)) /script作用域作用域就是变量与函数的可访问范围它控制着变量与函数的可见性和生命周期。分为全局作用域window变量或函数一经定义在代码中任何地方都能访问函数作用域函数作用域中定义的函数或变量只在当前函数内可访问----也称作局部作用域script var a10;//全局变量 function qq(){ var b10;//局部变量 a20;//全局变量更改全局变量a的值 c30;//全局变量非严格模式下函数中未使用var声明的变量会被自动创建为全局变量 } /script按值传递按值传递是指两个变量间赋值或将变量作为参数传入函数时其实只是将原变量中的值复制一个副本给对方。JS中为函数传递参数时都是按值传递的。如果传递的是原始类型数据则在函数内修改参数变量的值不会影响外部的原变量。提前声明JS程序在正式执行前会将所有var声明的变量和function声明的函数提前到所在作用域的顶部集中创建。但是会将赋值留在原地。全局函数全局函数是指ECMAScript标准中预定义好的可以直接使用的函数。例如Boolean(); isNaN(); Number(); String(); parseFloat(); parseInt();eval(); 用于执行字符串类型的js语句即会把一个字符串当成js语句执行相当于一个小型的js解析器script var str prompt(请输入一个算术运算表达式例如12); //var resulteval(str); console.log(str的结果为eval(str)); /script编码将url中的多字节字符编码为单字节字符解码反向将单字节字符解码为多字节字符encodeURl(); URI进行编码。//编码encodeURlComponent(); 对URl的有效组件进行编码。//编码可编码特殊符号,比如 /。decodeURl(); 对已编码的URI进行解码。//对url进行解码decodeURlComponent(); 对URl的一个已编码的组件进行解码 。//解码可解码特殊符号,比如 /。