Javascript刷题笔记:
-
var a=“30”,var b=8,则执行a%b会得到6 在这种运算中只有进行加法运算的时候,数字会变成字符串,并进行字符串拼接,其余运算,都是字符串转换成数字进行运算
-
var val = 12;
function fun1(){
console. log(val);
var val = 20;
console.log(val);
}
fun1();
结果为:undefined 20
在js中有域的概念,起初val定义为全局值,在fun1()中属于局部值,可以读取到全局值,但是在fun1()中又重新定义val,所以就不会再读取外部的值,被覆盖掉了 -
(1)1 == true // 布尔值会转成number true即为1 所以结果是true
0==false //布尔值false转换成number0 ,所以结果为true
(2)Javascript规范中提到, 要比较相等性之前,不能将null和undefined转换成其他任何值,并且规定null和undefined是相等的,null和undefined都代表着无效的值。
(3)isNaN()用于检查其参数是否是非数字值,如果参数值为 NaN 或字符串、对象、undefined等非数字值则返回 true, 否则返回 false。 -
javascript基本数据类型:usnb
undefined string number boolean
引用数据类型:
Object array function -
检测一个js对象是数组类型方法
a. Array.isArray(),能判断参数是否为数组
b. instanceof 运算符返回一个布尔值,表示对象是否为某个构造函数的实例
let arr=[1,3.5];
arr instaceof Array
返回true
c. typeof 能判断类型有:number、string、boolean、symbol、undefined、function; object、array、null 的变量都返回 object
d.Object.prototype.toString() 为 Object 对象的实例方法,默认情况下(即不重写该方法),返回参数的类型字符串。 -
给id='button1’的按钮button 开启禁用
(1) document.getElementById('button1).disabled=true;
(2)document.getElementById(‘button1’).setAttribute(‘disabled’,‘true’) -
以下哪些事件会在页面加载完成(onload)之前触发?
A. readystatechange
document有readyState属性来描述document的loading状态,readyState的改变会触发readystatechange事件.
loading
文档仍然在加载
interactive
文档结束加载并且被解析,但是像图片,样式,frame之类的子资源仍在加载
complete
文档和子资源已经结束加载,该状态表明将要触发load事件。
因此readystatechange在onload之前触发。
B.onpageshow
onpageshow 事件在用户浏览网页时触发。
onpageshow 事件类似于 onload 事件,onload 事件在页面第一次加载时触发, onpageshow 事件在每次加载页面时触发,即 onload 事件在页面从浏览器缓存中读取时不触发。
C. beforeunload
当浏览器窗口,文档或其资源将要卸载时,会触发beforeunload事件。这个文档是依然可见的,并且这个事件在这一刻是可以取消的.
如果处理函数为Event对象的returnValue属性赋值非空字符串,浏览器会弹出一个对话框,来询问用户是否确定要离开当前页面(如下示例)。有些浏览器会将返回的字符串展示在弹框里,但有些其他浏览器只展示它们自定义的信息。没有赋值时,该事件不做任何响应。
D.DOMContentLoaded
当初始的 HTML 文档被完全加载和解析完成之后,DOMContentLoaded 事件被触发,而无需等待样式表、图像和子框架的完成加载。
另一个不同的事件 load 应该仅用于检测一个完全加载的页面。因此DOMContentLoaded是HTML完全加载和解析完成之后发生的,发生时间点要早于load,选D。
在使用 DOMContentLoaded 更加合适的情况下使用 load 是一个令人难以置信的流行的错误,所以要谨慎。
注意:DOMContentLoaded 事件必须等待其所属script之前的样式表加载解析完成才会触发。
-
alt和title同时设置的时候,alt作为图片的替代文字出现,title是图片的解释文字
-
CSS Sprites在国内很多人叫css精灵,是一种网页图片应用处理方式。它允许将一个页面涉及到的所有零星图片都包含到一张大图中, 利用CSS的“background-image”,“background- repeat”,“background-position”的组合进行背景定位, 访问页面时避免图片载入缓慢的现象。
优点:
(1)CSS Sprites能很好地减少网页的http请求,从而大大的提高页面的性能,这是CSS Sprites最大的优点,也是其被广泛传播和应用的主要原因;
(2)CSS Sprites能减少图片的字节;
(3)CSS Sprites解决了网页设计师在图片命名上的困扰,只需对一张集合的图片命名,不需要对每一个小图片进行命名,从而提高了网页制作效率。
(4)CSS Sprites只需要修改一张或少张图片的颜色或样式来改变整个网页的风格。