美文网首页
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