整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

零基础入门JavaScript-详解函数的使用以及参

零基础入门JavaScript:详解函数的使用以及参数的介绍

数对于任何编程语言来说都是核心部分。通过函数可以封装任意多条语句和表达式,而且可以在任何地方、任何时候调用函数方法来执行。

在JavaScript中的函数使用function关键字声明,然后就是函数的参数和函数体。

函数的语法如下:

function functionName(arg0,arg1,arg2,...){
statements
}

示例:

定义了一个hello方法, 这个函数通过其函数名来调用,函数输出结果是"Hello World"。函数中定义中的命名参数h和w被作用了字符串拼接的两个操作数,最终结果通过控制台打印显示出来。

JavaScript中的函数在定义时不必指定是否返回值。实际上,任何函数在任何时候都通过return语句后跟要返回的值来实现返回值。

带有返回函数的语法如下:

function functionName(arg0,arg1,arg2,...){
statements
return result;
}

示例:

凡是带有返回值的函数,在return之后写其它代码块是不会在执行的,因为已经把结果都返回出去了相当于这个函数已经结束了。

在严格模式对函数存在一些限制:

1、不能把函数名命名为eval或者arguments;

2、不能把参数命名为eval或arguments;

3、不能出现两个命名参数同名的情况。

如果发生以上的情况,会导致语法错误,代码执行不下去。

JavaScript函数的参数与大多数语言的函数参数有一点区别。JavaScript函数不介意传递进来多少个参数,也不在乎传递进来的参数是什么类型。即使定义的函数带有接收两个参数,在调用这个函数时也不一定要传这两个参数。可以不传参数、可以传一个参数、可以传两个参数甚至跟多。但是对于JavaScript解析器来说是不会报错的,完全正常解析。

原因在于JavaScript内部接收参数始终都是以数组来接收,实际上我们可以通过arguments对象来访问这个参数数组,从来获取传递函数的每一个参数信息。

访问arguments对象数组可以使用方括号来访问它的每一个元素,使用length属性来确定传递进来多少个参数。在前面的hello函数可以通过arguments[0]来获取参数。

示例:

arguments获取参数也是有顺序的,第一个参数传进来的是什么就是什么。

还可以不定义参数传递的值

如果值传递了一个值,然后通过arguments[1]获取参数,其实结果是undefined。arguments[0]是正常的参数值,因为只传了一个值。

JavaScript中除了对象类型参数,其它参数都是值传递,不可能通过引用参数传递

而且JavaScript中的函数不存在重载,定义多个函数名相同并且参数个数不同的方法进行调用,永远都是拿最后定义的那个函数作为方法调用。

调用的是带两个参数的函数,因为我这里只传了一个值,第二个值默认是undefined。

所以说JavaScript不存在方法重载的这一方法。

动XRunner测试工具脚本设置关联参数及运用。

大家好,今天讲解掌动XRunner测试工具脚本设置关联参数及运用。本期的HTTP脚本包含登录、查询用户和编辑用户三个场景。关联参数的用途是获取HTML返回的参数值并传参给其他接口。设置关联参数的方法有两种,分别是"左右边界值"法和"JSON方式"获取法。

先来查脚本及场景。场景设计思路介绍,首先是"登录"场景,通过录制工具录制的脚本系统会设置默认关联参数,如HTTP支持:Host、Cookie、Content-Length等等。"默认关联参数"是为了加强录制脚本的通用性。"登录"后再"查询用户列表","查询用户列表"是为了获取"编辑用户"场景所需的参数,获取到参数后再"编辑用户"。

"编辑用户"需要三个必填参数,分别是参数userld和参数loginName,返回被测系统,查看编辑用户的信息及对应参数的情况。这里需要强调的是loginName是不可更改项,要确保参数值不变。还有参数userld,userld可返回"用户列表"页查看。该如何获取这几个参数?返回"脚本编辑"页,选中"查询用户节点",点击"关联参数"。

·先介绍第一种"左右边界值"法,"来源"选择"HTTP内容","参数名"在被测系统的response中找到userld,复制"userld":298。返回脚本编辑页,参数名定义为userlD,"黏贴"userld":298,进"查找文本"里剪切298,黏贴到"右边文本"里删掉298。

这样就获取到userld参数值"298"了。获取次数选"第一个",还要获取loginName的参数值。可以采用"Beast方式"获取法,需先分析"查询用户列表"返回的Response信息。我们的目标是获取loginName的test1,返回"脚本编辑"页,点击"新增"操作,"来源"选择"JSON方式",查看具体用法。

参考例子2来获取loginName的参数值。开始定义loginName参数。

·返回被测系统,该SS的SS是一个数组,loginName是数组[0]的参数,rows在天长数据的第一层,复制"rows"。

·返回脚本编辑页,参数名定义为ln。刚才对HY数据的分析可知,"查找文本"里要录入第一层"/字段"。

·再取数组第一个元素中的loginName参数。

→复制"loginName",将/loginName添加到rowa零后面及loginName,"读取次数"也是选"第一个",保存。

→复制userlD用于"编辑用户"的参数引用。

→选中"编辑用户"节点,将参数userld的参数值2替换成(userlD),再变更参数loginName。因为loginName是不可变更的,所以要使用原loginName的参数值。

→返回脚本编辑页。

→选中"查询用户列表"节点,复制参数名ln,将获取的loginName传参给"编辑用户",即把loginName参数值test1替换成"lN]。

→最后再编辑参数userName。为了区分userName和loginName可以定义一个变量。

→点击"参数列表","类型"选"随机参数","参数名"用"name","参数值/前缀"用"aa_"下滑杠。

→设置初始值和结束值,在1~1000之间生成一个随机数并与"参数前缀"拼接,生成参数name的值。"关闭窗口"。将userName的参数值test1替换成(name}。

→保存。返回被测系统查看用户列表信息,查看"登录名称"为test1的信息。

→返回"脚本编辑"页,点击"调试"。从调试日志看到userID是258,QQ是test1,name是aa_801。

→返回被测系统验证,刷新用户列表查看用户名是否修改成"aa_801"。

→刷新后用户名变更为"aa_801"。

→返回调试页,再调试一次。userlD和ln保持不变,name变成"aa_333"。再返回被测系统验证,刷新后查看用户名变更为"aa_333",说明已经关联设置成功了。

以上是关联参数设置的全部内容,感谢观看。

前2篇文章讲了《为什么375×667是移动端原型设计的最佳分辨率如何设置手机APP原型尺寸

所谓的APP原型适配手机,是指用手机浏打开原型页面的时候,横竖都刚好撑满屏幕。当然如果页面比较长,高度超过一屏是没问题的。

如果你的原型是你手机屏幕的逻辑分辨率

比如你的原型是375×667,手机是iPhone6/6s/7,那在手机上查看的时候无需缩放,默认撑满屏幕。

如果你的原型是360×640,而手机是Android的小米4、小米note、华为p7、p8荣耀6、7这些主流机型,也是一样的。

如果你的原型不是你手机屏幕的逻辑分辨率

比如你的原型是375×667,而你的手机是华为p8,1080×1920。理论上来说无法完美适配APP中所有的页面。但是除了有下导航的页面一般都没问题。

设置生成原型的手机参数

你需要在Axure生成HTML的时候设置一下手机上如何展示原型。

请勾选包含视口标签。浏览器显示网页,默认是按照网页自身分辨率来展示的。勾选了此项之后,里面的区域按照下方规则来处理展示。

宽,使用默认的device-width即可。

高,一般不需要填,因为是根据宽度来决定的。

最小缩放倍数和最大缩放倍数,一般不需要填。

允许用户缩放,一般填写no。

初始缩放倍数怎么填

具体规则是原型页面的横向分辨率x初始缩放倍数xDPR参数=手机屏幕的横向分辨率。得出这个值填到上图中的对应位置。

而这里的DPR参数(devicePixelRatio),代表的是设备像素和CSS像素的比例,下方的chrome网页调试中也揭示了这一点。

所以上面的华为p8应该设置为0.96,你可以根据机型去百度搜索对应的DPR参数是多少。

查看原型

在电脑上看

通过chrome-视图-开发者-开发者工具,切换到你想看的手机尺寸。同时也可以用这个工具去了解在其他机型上面的效果,以方面了解是不是需要单独适配。

当然safari的菜单栏-开发-响应者模式也可以。

在手机上看

请用手机浏览器打开该网页,请用手机浏览器打开该网页,最好生成到桌面查看效果。比如我设计的原型。

建议竖向减掉20px,因为Axure默认不显示顶部状态栏。

总结

建议你们下次设计APP原型的时候按照通用分辨率375×667来设置,次选方法是按照自己手机的逻辑分辨率来定尺寸。。

如果想明白为什么要这样设置,可以去搜索viewport和逻辑分辨率等概念。当然就使用而言,PM无需了解这些知识。

至于如何把原型放到手机上面查看,我们下次再讲。