美文网首页
javascript练习错题集及相关知识点

javascript练习错题集及相关知识点

作者: 走花鹿 | 来源:发表于2018-10-24 15:27 被阅读0次
    javascript练习错题集及相关知识点

    总结:

    alert($(window).height()); //浏览器当前窗口可视区域高度

    alert($(document).height()); //浏览器当前窗口文档的高度

    alert($(document.body).height());//浏览器当前窗口文档body的高度

    alert($(document.body).outerHeight(true));//浏览器当前窗口文档body的总高度 包括border padding margin

    alert($(window).width()); //浏览器当前窗口可视区域宽度

    alert($(document).width());//浏览器当前窗口文档对象宽度

    alert($(document.body).width());//浏览器当前窗口文档body的高度

    alert($(document.body).outerWidth(true));//浏览器当前窗口文档body的总宽度 包括border padding margin


    第二题

    变量提升

    程序先找到所有申明,然后再赋值

    javascript练习错题集及相关知识点

    4.

    值传递,传递的是原来值的副本。

    引用传递,除了一些特殊的(String,包装类属于不可变类),一般的引用类型在进行传递的时候,一开始形参和实参都是指向同一个地址的,这个时候形参对对象的改变会影响到实参。

    面向对象开发中,引用传递意味着传递的并不是实际的对象,而是对象的引用,因此,外部对引用对象所做的改变不会反映到所引用的对象上。这句话,在“因此”两字前,是对的,然后后面的就错了,外部对引用对象所做的改变会反映到所引用的对象上~


    5.

    首先,前面+是一元运算符,相当于我们说的正负,无运算效果,但是可以将字符串等转为number类型。

     此题中017其实是八进制(因为开头0表示是8进制,开头0x是16进制),故而是是Array(15)。

    这里相当于对于一个未赋值但是长度为15的数组进行number类型转化,其结果为NaN

    照规则,数组对象应该采用Number,所以先执行valueOf,发现valueOf返回的是自己,所以继续执行toString,过程如下:

    Number(new Array(15))

    // new Array(15).valueOf()不是原始值,所以执行toString()

    Number(new Array(15).toString())

    Number(",,,,,,,,,,,,,,")

    NaN

    所以答案是NaN


    相关文章

      网友评论

          本文标题:javascript练习错题集及相关知识点

          本文链接:https://www.haomeiwen.com/subject/qrfxtqtx.html