包装类

包装类

创建基本包装类型之后,JS中的基本类型值可以被当作对象来访问。但是undefined,null没有。

        var num = new Number(123);
        var str = new String('abc');
        var bol = new Boolean(true);
        var obj = new Object();

        var unde = new Undefined();  错误写法!!!
        var nul = new Null();    错误写法!!!

区分的例子

    var num = 4;
    num.len = 3;
    //new Number(4).Len = 3;   delete
    //
    //new Number(4) len
    console.log (num.len) ;  //返回undefined

结果:undefined

    var str = "abc";
    str += 1;
    var test = typeof(str);  //test = "string"
    if(test.length == 6) {
    test.sign = "typeof的返回结果可能为String";
    //原始值不能附属性,调用包装类
    //new String(test).sign = "typeof的返回结果可能为String"; delete
    }
    //重新    new String(test).sign
    console.log(test. sign);

结果:undefined

 // 2.分析下面的JavaScript代码段:
    function employee (name,code) {
    this. name="wangli";
    this.code=" A001";
    }
    var newemp = new employee (" zhangming", ' A002' ) ;
    document. write("雇员姓名:"+ newemp. name+ "<br>" ) ;
    document. write("雇员代号:"+ newemp.code +"<br>") ;
    // 输出的结果是().(选择一项)
    // A.雇员姓名:wangli雇员代码:A001
    // B.雇员姓名: zhangming雇员代码: A002
    // C.雇员姓名: nul,雇员代码: null
    // D.代码有错误无输出结果

分析:虽然传入了参数,但是我们的构造函数内部是已经确定的值了,没有使用实际参数。

题目3

    function Person (name, age , sex) {
    var a=0;
    this. name = name;
    this.age = age;
    this.sex = sex;
    function sss() {
        a++;
        document.write(a);
    }
    this.say = sss;
    }
    var oPerson = new Person() ;
    oPerson. say() ;
    oPerson.say() ;
    var oPerson1 = new Person( ) ;
    oPerson1. say() ;

输出:1 2 3

题目4

    var x=1,y=z=0;
    function add(n) {
    return n=n+1;
    }
    y = add(x);
    function add(n) {
    return n=n+3;
    }
    z = add(x);
    console.log(x,y,z)

输出:1 4 4
分析:预编译!函数和变量声明会被提升,所以在后面执行的时候本质上调用的是后面的add()函数。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值