第十八篇 JS传参数
JS传参数
参数,这是个什么东西呢?简单的说吧,我们去玩别人的网站,一般来个登录,有用户名和密码,当我们输入正确之后,那么这用户名和密码里面的值,就是参数的值,它将这个值传给“参数”,然后提交到后台去做验证,和数据库做匹配并判断,OK的话,就成功登录,不OK,那就失败呗。
还有一个比较好的例子,今后工作项目中,或许我们要调用接口,去访问别人的url,那么势必是要用到参数的,就比如短信接口,人家把一切写好了,你只需要调用,但是你要传参数啊,为什么呢,人家要验证你的用户名和密码是否正确,这样才能判断为,是用户本人操作,而并非是盗号者操作的,然后发送的短信内容是什么,这也是一个参数,还有发送的手机号也是一个参数。
参数这么重要,那么怎么用好参数呢,刚开始学的同学肯定会比较晕的,不怕,我们看代码,去改代码,去测试它的功能,了解它的规则,慢慢的就会了,那么我们看代码,先测试一些简单的:
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>JS参数</title> </head> <body> <div onclick="onediv(995)">第一个div</div> <script> //这里的num是一个参数,随便取得名字 function onediv(num){ alert(num); } </script> </body> </html>
上面这段代码,我们点击div就会弹出提示框,里面的内容则是'995',为什么呢,因为我们在onclick事件里给了一个参数值,而JS函数里,定义一个参数名,它会通过事件而传递到函数里来,因为它们本身就是一个事件函数。
那么我们在参数里,995后面加一个呢,那么同学们要注意格式:
<div onclick="onediv(995,'嗨,同学们好')">第一个div</div> <script> //这里的num是一个参数,随便取得名字 function onediv(num,string){ alert(num+"==========="+string); } </script>
这样的话,则会弹出:995===========嗨,同学们好。。这里要注意,在onclick事件里,字符串格式,要打单引号,数字则不需要。在JS函数里,因为上面提供了两个参数,所以下面也要用逗号区分开,然后取个参数名,这样就可以调用参数值了。
参数它还可以函数之间调用,看看下面的代码呢:
<div onclick="er()">测试第二个div</div> <script> function yi(){ return '我是字符串'; } function er(){ alert(yi()); } </script>
return 是返回一个结果,返回给这个函数本身,当用了return之后,下面的代码将不再执行。当我点击div触发er()事件的时候,它会运行er函数,而这里面则盗用了 yi()函数,yi()函数返回了一个结果,所以er则会弹出这个结果的提示!
再加一个点击事件dd()函数来看出,参数是可以改变的,下面是整理好的代码:
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>JS参数</title> </head> <body> <div onclick="onediv(995,'嗨,同学们好')">第一个div</div> <br/><br/> <div onclick="er()">测试第二个div</div> <br/><br/> <div onclick="dd('我是参数1111111111')">我是参数1111111111</div> <br/><br/> <div onclick="dd('我是参数2222222222')">我是参数2222222222</div> <script> //两个div 同一个点击事件运行dd函数,弹出的结果则因为参数不一样而不一样 function dd(string){ alert(string); } //这里的num是一个参数,随便取得名字 function onediv(num,string){ alert(num+"==========="+string); } function yi(a){ return '我是字符串'; } function er(){ alert(yi()); } </script> </body> </html>
额外:我们提交表单,为什么会说post会比gat安全呢?就比如一点,当我们提交数据之后,在网页地址栏里,我们能看见,我们的参数名和参数值都会看见,这就是用gat方法,而用post,则会隐藏。如果登录的时候,用户名和密码都在地址栏里出现了,旁人一下记住了怎么办呢,对吧!