js 进阶知识

1)打开一个窗口就会有一个window对象(如页面上的iframe),window中包含document,document主要是来操作dom元素的(页面上的标签元素)

2)我们在页面上声明一个全局变量其实是声明在window对象上的,eg:

<span style="font-size:14px;">  var abc = 'jy';
    alert(window.abc);
    alert(abc);
    //由此可见全局变量abc是注册在window对象上的,即所有的变量都是注册在window对象上的。页面上的控件
    //或者元素是注册在window内部的document对象上的,换句话说window是一个页面的最高级。
    alert(document.body.innerHTML);
    alert(window.document.body.innerHTML);
    //由上面可以知道window是在最上层的,它的下面是document,window是指当前整个窗体,而document是指当前页面中的元素。</span>

3)js中的类其实都是方法,举个例子来说明一下,eg:

 var A = function () {
        this.name = "wenbin";//这里的this关键字不能省略,否则调用不到。
        this.jy = function () {
            alert('heihei');
        }
    }
我们可以直接输出类A的属性name,使用语句var a=new A();alert(a.name);

下面是一个复杂的例子,eg:

   var A = function () {
        this.name = "wenbin";
        this.jy = function () {
            alert('heihei');
        }
    }
    //可以用这种方式来声明类,其实类也就是方法。js中就是这样表现类的。
    //这里的b依赖于a
    var B = function (aObject) {
        this.aObject = aObject;
        alert(aObject.name);
        this.heihei = aObject.jy;
        this.attr = { name: 'wenbin', age: 26 };
    }
    var a = new A();
    alert(a.name);
    //下面的是把a注入到b。
    var b = new B(a);
    //上面相当于调用默认构造函数,直接调用了alert(aObject.name)
    alert(b.attr.age);
    b.heihei();</span>


4)js中的alert指令会终止一切进程,只有等到alert执行过后(用户点掉对话框后)才回去执行其他的。这个时候就会出现问题,如angular的表达式,其他语言的对话框也是一样,所以我们要是添加了alert之后代码就好用的话,那么就有可能是程序的线程问题,即东西没执行完,但是不知道在哪块又进行了调用,或者是线程问题。




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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值