js接收函数返回值.docx
- 文档编号:10055561
- 上传时间:2023-02-08
- 格式:DOCX
- 页数:10
- 大小:21.47KB
js接收函数返回值.docx
《js接收函数返回值.docx》由会员分享,可在线阅读,更多相关《js接收函数返回值.docx(10页珍藏版)》请在冰豆网上搜索。
js接收函数返回值
竭诚为您提供优质文档/双击可除
js接收函数返回值
篇一:
js中常用函数
window.close();关闭窗口
window.location="";
alert("sdfsadfsadf");消息窗口
window.back();返回前一页;
history.go(-1);
window.open("inde.jsp","","width=100height=100top=100left=100");弹出窗口
click()对象.click()使对象被点击。
closed对象.closed对象窗口是否已关闭true/falseclearTimeout(对象)清除已设置的setTimeout对象clearInterval(对象)清除已设置的setInterval对象confirm("提示信息")弹出确认框,确定返回true取消返回false
cursor:
样式更改鼠标样式handcrosshairtextwaithelpdefaultautoe/s/w/n-resize
event.clientx返回最后一次点击鼠标x坐标值;event.clientY返回最后一次点击鼠标Y坐标值;event.offsetx返回当前鼠标悬停x坐标值
event.offsetY返回当前鼠标悬停Y坐标值
document.write(document.lastmodified)网页最后一次更新时间
document.ondblclick=x当双击鼠标产生事件document.onmousedown=x单击鼠标键产生事件
document.body.scrollTop;返回和设置当前竖向滚动条的坐标值,须与函数配合,
document.body.scrollLeft;返回和设置当前横向滚动务的坐标值,须与函数配合,
document.titledocument.title="message";当前窗口的标题栏文字
document.bgcolordocument.bgcolor="颜色值";改变窗口背景颜色
document.Fgcolordocument.Fgcolor="颜色值";改变正文颜色
document.linkcolordocument.linkcolor="颜色值";改变超联接颜色
document.alinkcolordocument.alinkcolor="颜色值";改变正点击联接的颜色
document.Vlinkcolordocument.Vlinkcolor="颜色值";改变已访问联接的颜色
document.forms.length返回当前页form表单数document.anchors.length返回当前页锚的数量document.links.length返回当前页联接的数量document.onmousedown=x单击鼠标触发事件
document.ondblclick=x双击鼠标触发事件
defaultstatuswindow.status=defaultstatus;将状态栏设置默认显示
functionfunctionxx(){...}定义函数
isnumeric判断是否是数字
innerhTmLxx=对象.innerhTmL输入某对象标签中的html源代码
innerTextdivid.innerText=xx将以div定位以id命名的对象值设为xx
location.reload();使本页刷新,target可等于一个刷新的网页
math.random()随机涵数,只能是0到1之间的数,如果要得到其它数,可以为*10,再取整
math.floor(number)将对象number转为整数,舍取所有小数
math.min(1,2)返回1,2哪个小
math.max(1,2)返回1,2哪个大
navigator.appname返回当前浏览器名称
navigator.appVersion返回当前浏览器版本号
navigator.appcodename返回当前浏览器代码名字navigator.userAgent返回当前浏览器用户代标志onsubmitonsubmit="return(xx())"使用函数返回值
openeropener.document.对象控制原打开窗体对象promptxx=window.prompt("提示信息","预定值");输入语句
parentparent.框架名.对象控制框架页面
returnreturnfalse返回值
random随机参数(0至1之间)
reset()form.reset();使form表单内的数据重置
split("")string.split("")将string对象字符以逗号隔开submit()form对象.submit()使form对象提交数据string对象的charAt(x)对象反回指定对象的第多少位的字母
lastIndexof("string")从右到左询找指定字符,没有返回-1
indexof("string")从左到右询找指定字符,没有返回-1Lowercase()将对象全部转为小写
uppercase()将对象全部转为大写
substring(0,5)string.substring(x,x)返回对象中从0到5的字符
setTimeout("function",time)设置一个超时对象setInterval("function",time)设置一个超时对象
toLocalestring()x.toLocalestring()从x时间对象中获取时间,以字符串型式存在
typeof(变量名)检查变量的类型,值有:
string,boolean,object,Function,underfined
window.event.button==1/2/3鼠标键左键等于1右键等于2两个键一起按为3
window.screen.availwidth返回当前屏幕宽度(空白空间)
window.screen.availheight返回当前屏幕高度(空白空间)
window.screen.width返回当前屏幕宽度(分辨率值)window.screen.height返回当前屏幕高度(分辨率值)window.document.body.offsetheight;返回当前网页高度window.document.body.offsetwidth;返回当前网页宽度window.resizeTo(0,0)将窗口设置宽高
window.moveTo(0,0)将窗口移到某位置
window.focus()使当前窗口获得焦点
window.scroll(x,y)窗口滚动条坐标,y控制上下移动,须与函数配合
window.open()
window.open("地址","名称","属性")
属性:
toolbar(工具栏),location(地址栏),directions,status(状态栏),
menubar(菜单栏),scrollbar(滚动条),resizable(改变大
篇二:
Js函数function
一、理解函数的本质:
1.函数也相当于数据,只不过是一段代码块,便于反复调用,是进行模块化程序设计的基础,我们可以把它们看作数据(data)。
函数也是数据
作为值得函数
functionsum(num){}console.log(get(sum,100));returnnum+100;functionget(functions,argument){第一个参数接受函数引用,第二个参数接受参数}returnfunctions(argument);函数本身就是变量,所以函数也可以作为值来使用
输出200
functionsum(){}console.log(get(sum(),100));return500;可以像传参数一样把一个函数传递给另一个函数,也可以将一个函数作为另一个函数的结果返回functionget(functions,argument){}returnfunctions+argument;
返回600函数作为执行后的值返回
2.Javascript会为我们定义的每一个函数都创建一个原型对象.所以Javascript中的每个函数都是一个对象.
函数引用类型:
varfunction=newFunction();函数对象本质:
在解释器内部,当遇到函数声明这种语法时,就会自动构造一个Function对象,将函数作为一个内部的对象来存储和运行。
调用函数:
可知一个函数对象名称(函数变量)和一个普通变量名称具有同样的规范,都可以通过变量名来引用这个变量,但是函数变量名后面可以跟上括号和参数列表来进行函数调用。
识符.
length属性:
返回定义的函数的形参个数prototype属性:
原型,定义了tostring()call()apply();方法因为函数都是对象,它们有自己的属性和方法。
(name属性length属性prototype属性)函数的name属性:
通过这个属性可以访问到给定函数指定的名字,这个属性永远等于跟在function关键字后面的标
3.函数和方法的区别?
函数立足于它们自己(例如:
alert()),而方法是函数内部一个对象的属性(dictionary),我们通过对象来调用方法。
每个Javascript对象都有一个tostring()方法(基于函数原型)每个Javascript函数都会有很多附属的(attached)方法,包括tostring()、call()以及apply()(基于函数原型)。
二、函数创建
1.函数声明法
functionsum(){}编译器加载的时候会提升函数预先加载到编译器
2.函数表达式字面量法
varsum=function(){};是一条语句后面需要加上分号加载时不提升,顺序加载到时,执行匿名函数function(){}称为函数表达式
延伸:
采用函数表达式声明函数时,function命令后面不带有函数名。
如果加上函数名,该函数名只在函数体内部有效,在函数体外部无效。
varprint=functionx(){};x()print()//xisnotdefinedconsole.log(typeofx);//function
上面定义的函数同时写了函数名,这个x只在函数体内部可用,指代函数表达式本身,其他地方都不可用。
这种写法的用处有两个:
一是可以在函数体内部调用自身,二是方便除错(除错工具显示函数调用栈时,将显示函数名,而不再显示这里是一个匿名函数)。
递归计算
varsum=functionfib(num){
if(num>2){
returnfib(num-2)+fib(num-1);//递归调用自己也可用arguments.callee(num)
}else{
return1;
}
}
sum(6)
返回8
注意:
函数的表达式需要在语句的结尾加上分号,表示语句结束。
而函数的声明在结尾的大括号后面不用加分号。
3.匿名函数
function(){}没有函数名,定义时会报错,编译器加载时会误解function为函数声明,所以需要把函数表达式包成代码块(function(){}),
延伸:
立即执行函数
立即执行函数的本质:
Javascript的解析器在解析器解析全局的function或者function内部function关键字的时候,默认会把大括号解析成(function(){}())(function(){})()voidfunction(){}()定义函数表达式没有返回值或为undefined也是个表达式据说效率最高newfunction(){}也是立即执行newfunction(){}()如果传参数,可加上后面的()function声明,而不是function表达式。
Javascript引擎看到function关键字之后,认为后面跟的是函数定义语句,所以立即执行函数定义时必须让js引擎消除歧义,
不能把函数表达式理解为function函数声明命令
小括号的作用:
小括号能把我们的表达式组合分块,并且每一块,也就是每一对小括号,都有一个返回值,这个返回值实际上也就是小括号中表达式的返回值。
所以,当我们用一对小括号把匿名函数括起来的时候,实际上小括号对返回的,就是一个匿名函数的Function对象。
因此,小括号对加上匿名函数就如同有名字的函数般被我们取得它的引用位置了。
所以如果在这个引用变量后面再加上参数列表,就会实现普通函数的调用形式。
立即执行函数的目的有两个:
一是不必为函数命名,避免了污染全局变量;
二是IIFe内部形成了一个单独的作用域,可以封装一些外部无法读取的私有变量。
延伸:
理解函数声明、函数表达式、匿名函数的区别?
函数声明:
functionfnname(){…};使用function关键字声明一个函数,再指定一个函数名,叫函数声明。
函数表达式varfnname=function(){…};使用function关键字声明一个函数,但未给函数命名,最后将匿名函数赋予一个变量,叫函数表达式,这是最常见的函数表达式语法形式。
匿名函数:
function(){};使用function关键字声明一个函数,但未给函数命名,所以叫匿名函数,匿名函数属于函数表达式,匿名函数有很多作用,赋予一个变量则创建函数,赋予一个事件则成为事件处理程序或创建闭包等等。
@.函数声明和函数表达式不同之处在于?
@1.Javascript引擎在解析javascript代码时会‘函数声明提升’(Functiondeclarationhoisting)当前执行环境(作用域)上的函数声明,
而函数表达式必须等到Javascirtp引擎执行到它所在行时,才会从上而下一行一行地解析函数表达式,
varfnname=function(){alert(helloworld);}();//函数表达式后面加括号,当javascript引擎解析到此处时能立即调用函数functionfnname(){alert(helloworld);}();@2.函数表达式后面可以加括号立即调用该函数,函数声明不可以,只能以fnname()形式调用。
fnname();functionfnname(){...}//正常,因为‘提升’了函数声明,函数调用可在函数声明之前fnname();varfnname=function(){...}//报错,变量fnname还未保存对函数的引用,函数调用必须在函数表达式之后
//不会报错,但是javascript引擎只解析函数声明,忽略后面的括号,函数声明不会被调用function(){console.log(helloworld);}();//语法错误,虽然匿名函数属于函数表达式,但是未进行赋值操作,
//所以javascript引擎将开头的function关键字当做函数声明,报错:
要求需
要一个函数名
在function前面加!
、+、-甚至是逗号等到都可以起到函数定义后立即执行的效果,而()、!
、+、-、=等运算符,都将函数声明转换成函数表达式,消除了javascript引擎识别函数表达式和函数声明的歧义,告诉javascript引擎这是一个函数表达式,不是函数声明,可以在后面加括号,并立即执行函数的代码。
立即执行函数的用途?
javascript中没用私有作用域的概念,如果在多人开发的项目上,你在全局或局部作用域中声明了一些变量,可能会被其他人不小心用同名的变量给覆盖掉,根据javascript函数作用域链的特性,可以使用这种技术可以模仿一个私有作用域,用匿名函数作为一个“容器”,“容器”内部可以访问外部的变量,而外部环境不能访问“容器”内部的变量,所以(function(){…})()内部定义的变量不会和外部的变量发生冲突,俗称“匿名包裹器”或“命名空间”。
JQuery使用的就是这种方法,将JQuery代码包裹在(function(window,undefined){…jquery代码…}(window)中,在全局作用域中调用JQuery代码时,可以达到保护JQuery内部变量的作用。
(function(){
alert(water);
})();
(function(o){
alert(o);
})(water);
(function(o){
alert(o);
returnarguments.callee;//传递多个参数递归调用
})(water)(down);
三.函数声明提升与变量声明提升?
javascript是一门解释性语言,自然没有编译过程,但在脚本执行之前会有语法检查和执行环境的构建,我们把这一过程姑且称为预处理吧。
@1.函数声明,javascript解析器把函数提升
fn();//output2
varfn=function(){
console.log
(1);
}
functionfn(){
console.log
(2);
}
fn();//output1
首先,后面的fn()函数声明提前,所以第一个fn()为2
其次,后面定义的fn()覆盖前面声明的函数,所以后面执行的函数为字面两定义的函数,结果为1
@2.函数声明、变量声明、arguments参数三者提升优先级?
functionfn(t){
t();@1vartfunctiont(){@2.vart=function(){console.log
(1)}@3.vart=function(){consol.log
(2)};
@4.t();console.log
(2);}
vart=function(){
console.log(3);
}
console.log(t);
}
fn(function(){console.log
(1)});//output2
@1.变量声明vart提升到最顶端
@2.arguments中变量首先会覆盖var方式声明的变量(变量声明提升(:
js接收函数返回值))
@3.函数声明覆盖相同名字的变量
优先级:
函数形参>函数声明>变量声明(当变量声明遇到已经有同名的时候,不会影响已经存在的属性)
函数形参---->由名称和对应值组成的一个变量对象被创建,如果没有传递对应参数的话,那么由名称和undefined值组成的一种变量对象的属性也被创建
函数声明---->由名称和对应值(函数对象)组成的一个变量对象的属性被创建,如果变量对象已经存在相同的名称属性,则完全替换这个属性
变量声明---->由名称和对应值(undefined)组成一个变量对象的属性被创建,如果变量名称跟已经声明的形式参数或函数相同,则变量声明不会干扰已经存在的
functionaa(a,b,c){@1.a=1b=2c=3@2.a=functiona(){}@3.vara;varaa变量声明提升
}
aa(1,2,3);
输出结果:
functiona(){}functiona(){}console.log(a);console.log(aa);console.log(arguments);vara=ee;varaa=444;arguments=6;console.log(a);console.log(aa);console.log(arguments);//outputfunction(){console.log(3);}
篇三:
22c-js中的函数
13Javascript中的方法
13.1什么是方法
Javascript中的方法是可以完成某种特定功能的一系列代码的集合,在方法被调用前,方法体中的代码并不执行。
对方法的定义一般写在head部分
13.2Javascript中方法的定义
Javascript的方法属于Function对象,因此可以使用function对象的构造方法来创建一个方法。
13.2.1方法的普通定义
基本语法:
function方法名(参数1,参数2…){
…;
return语句;
}
Function:
定义一个方法
方法名:
方法的标识符
参数:
可选
Return:
返回值
调用事例:
方法的定义html
(可维护性差)
方法的变量定义方式是指以变量的方式定义方法。
基本语法:
var变量名=newFunction([参数1,参数2],方法体);变量名:
方法名
参数:
可选
方法体:
js程序语句,分号隔开
事例:
方法的变量定义方式
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- js 接收 函数 返回
![提示](https://static.bdocx.com/images/bang_tan.gif)