20151126测试中问题

1.下面代码,k的运行结果是:(A)

var i=0,j=0;
    for(;i<5,j<10;i++,j++){
        k=i+j;
    }
    console.log(k);//18

A.18  B.10  C.5  D.0

“i<5,j<10;”这里执行时中间是","连接符连接的,程序运行时只会看最后一个条件,虽然也会看逗号前面的内容,但只会以最后一个逗号内容作为判断条件.

2.

var x=1;
    function fn(n){
        n=n+1;
    }
    y=fn(x);
    console.log(y)//undefined

这里因为fn函数没有返回值,所以y是undefined.

3.

下面代码第一次弹 1 ,第二次弹 undefined .

function fn1(){
        alert(1);
    }
    alert(fn1());

 

下面代码弹出function fn1(){ alert(1); }

function fn1(){
        alert(1);
    }
    alert(fn1);

 

下面代码第一次弹1,第二次报错Uncaught TypeError: fn1(...) is not a function

4.以下代码运行后,结果为 程序报错 Uncaught TypeError: fn1 is not a function

fn1();
    var fn1=function(a){alert(a);}

 

以下代码运行后弹出undefined.

fn1();
    function fn1(a){alert(a);}

 

以下代码弹出 2222

fn1(2222);
    function fn1(a){alert(a);}

 

以下代码报错 Uncaught ReferenceError: bbbb is not defined

fn1(bbbb);
    function fn1(a){alert(a);}

5.

var n="miao wei ke tang".indexOf("ke",10);
    console.log(n)//-1
var n="miao wei ke tang".indexOf("ke",6);
    console.log(n)//9

6.

var arr=[];
    arr1=arr;
    console.log(arr===arr1)//true
var arr=[];
    arr1=[];
    console.log(arr===arr1)//false
var arr={};
    arr1={};
    console.log(arr===arr1)//false
var arr={};
    arr1=arr;
    console.log(arr===arr1)//true

两个对象时,即使相同也不相等,var arr=[],arr1=arr;此时是让arr1也指向arr指向的那个对象,他们指向的是同一样对象,因此是相等的.

7.以下代码运行后,结果为true,括号中从先运行++i,i为1,再运行右边,i以1执行操作,最后结果为2,1==1,true.

var i=0;
    alert(++i==i++);//true

8.

console.log(Number("")==parseFloat(""))//false
console.log(Number(""))//0
console.log(parseFloat(""))//NaN

9.以下代码中,第一次弹 1 ,第二次弹 1, 第三次弹 2.

function fn1(){
        var a=0;
        function fn2(){
            ++a;
            alert(a);
        }
        return fn2;
    }
    fn1()();
    var newFn=fn1();
    newFn();
    newFn();

 

下面代码什么都不弹,因为fn1里的fn2未运行

function fn1(){
        var a=0;
        function fn2(){
            ++a;
            alert(a);
        }
        return fn2;
    }
    fn1();

 

下面代码弹1,因为fn1()返回fn2,fn2()弹出1

function fn1(){
        var a=0;
        function fn2(){
            ++a;
            alert(a);
        }
        return fn2;
    }
    fn1()();
function fn1(){
        var a=0;
        function fn2(){
            ++a;
            alert(a);
        }
        return fn2;
    }
    fn1()();
    var newFn=fn1();
    newFn();//类似fn1()(),弹出1,返回fn2
    newFn();//fn2(),a此时为1,++a,为2

10.

var arr=[1,2];
    var arr2=arr.concat();
    console.log(arr);//[1,2]
    console.log(arr2)//[1,2]
    arr2=arr.concat(3);
    console.log(arr2)//[1,2,3]
    arr2.push(arr.splice(1,0));
    console.log(arr);//[1,2]
    console.log(arr2)//[1,2,3,[]]

11.全局下调用test,所以this.a为10,下面会把var a提到函数最顶部顶部解析,因为最后一次也是弹出100

var a=10;
    function test(){
        a=100;
        alert(a);//100
        alert(this.a);//10
        var a;
        alert(a);//100
    }
    test();
时间: 2024-10-30 11:37:25

20151126测试中问题的相关文章

游戏测试中的sql语句

基本的内容在这里就不写了. 游戏测试中经常使用到1个复合条件的 游戏内一般要查下用户剩余多少钱.例如有个字段为energy代表体力 表名为db_role 关键字段 id,name(唯一) 要查询条件为 energy在1500一档,然后二档是500~1000之间的 语句为 select id,name,energy from db_name where energy=1500 OR(energy >=500 and energy<1000) 喜欢as的话 可以再要看的列之前加as  select

【转】移动App测试中的最佳做法

一说起软件测试,测试员想到肯定是去检查文件,功能,API,性能并确定软件是否安全,以及关于软件特定部分的其他事项.但是对于移动测试,测试员不得不基于用户移动使用模式考虑移动相关的功能. 本文是基于我的工作经验而写的.作为一名敏捷软件开发团队的软件质量保证经理,我一心投入iPhone,Android,WindowsPhone7的移动apps和移动webapps.在XING移动团队的日常工作以及与其他移动测试专家交流的过程中,我深刻了解了移动测试工作的困难.渐渐地,我明确了什么是帮助改进同事们和我的

Cgroup和Namespace在测试中的使用(上)

Cgroup和Namespace在测试中的使用(上) 很多时候需要测试程序在资源受限情况下的表现,普通的做法可能是不断对系统加压使能够分配给目标程序的资源变少,换另一个思路思考,可以尝试限制分配给目标程序的资源总数,使得机器状态健康的情况下让程序资源使用达到饱和. 作为一个正在做着容器项目的人,知道容器技术是依靠Cgroup和Namespace来实现的.在容器中,cpu和内存资源是使用Cgroup来控制,PID.IPC.网络等资源是通过Namespace来划分.在程序没有部署在容器的情况下,我们

Cgroup和Namespace在测试中的使用(下)

Cgroup和Namespace在测试中的使用(下) Namespace介绍 使用Namespace又叫做命名空间,可以让每个进程组具有独立的PID.IPC和网络空间等,也就是说这些系统资源不再是全局性的,而是属于特定的Namespace,每个Namespace里面的资源对其他Namespace都是透明的,从而达到资源的隔离效果. 目前namespace的种类如下 分类 系统调用参数 Mount namespaces CLONE_NEWNS UTS namespaces CLONE_NEWUTS

LoadRunner之Paramater在负载测试中的数据生成规则

LoadRunner之Paramater在负载测试中的数据生成规则 前段时间在做性能测试的时候,基于业务的需求,使用到了Unique Number的参数类型. 脚本的业务是注册以alien开头,后面接数字的用户帐号,填写相关帐号信息.提交企业信息进行审核. 其中用户帐号是alien开头拼接一个唯一数字的参数,如图: 下面对Unique Number进行相关解释,先引用官方资料:(相信大家也理解这段话的意思) Unique Number: Assigns a range of numbers to

压力测试中需要掌握的几个基本概念

1:吞吐率(Requests per second) 服务器并发处理能力的量化描述,单位是reqs/s,指的是某个并发用户数下单位时间内处理的请求数.某个并发用户数下单位时间内能处理的最大请求数,称之为最大吞吐率. 记住:吞吐率是基于并发用户数的.这句话代表了两个含义,1:吞吐率和并发用户数相关:2:不同的并发用户数下,吞吐率一般是不同的. 计算公式:总请求数 / 处理完成这些请求数所花费的时间,即 Request per second = Complete requests / Time ta

移动App测试中的最佳做法

每项开发的新功能都需要进行测试.移动app测试中功能测试是一个重要方面,移动测试员应该要进行手动测试和自动化测试.刚开始测试时,测试员必须把移动app 当做"黑盒"一样进行手动测试,看看提供的功能是否正确并如设计的一样正常运作.除了经典软件测试,像点击按钮看看会发生什么,测试员还必须执行更多功能的移动设备专门的测试. 如今,现代移动设备都有触摸屏,要求多点触控动作来与它们互动.设备可以是纵向或横向显示屏.它们提供动作,倾斜和螺旋传感器.它们有不同的接口可以连接其他设备或服务,比如GPS

[转]移动App测试中的最佳做法

Daniel Knott 用过各种不同编程语言和软件质量保证工具.他在软件开发和测试方面干了七年,自2010年起,他一直在德国汉堡的XING AG公司就职,几个项目里,比如XING调查和XING建议,他负责测试管理,测试自动化和测试执行.Daniel现在是XING移动和XING API团队的质量保证团队负责人.在XING移动团队中,他还负责XING安卓和iPhone Apps的测试管理和测试自动化.Daniel在包括像Robotium, KIF (Keep It Functional), Sel

测试中的杀虫剂困境

第一次听到"杀虫剂困境"这个词来源于<微软的软件测试之道>中讲述的一个小故事.其中对于杀虫剂困境的原文表述是:"任何你用以防止或发现缺陷的方法都会留下一些残余的.更为微妙的缺陷,而对于这些缺陷而言,前面那些方法会统统失效."意思就是说,测试中单一的测试技术.手段.方法.策略往往是不足以全部覆盖潜在的缺陷范围的.因此,在测试过程中,包括测试策略的制定.测试案例设计.测试执行的方式和方法等,都要保持方法的多样性,尝试从更多的角度去审视和观察被测软件的行为表现