函数声明方式
在Javascript定义一个函数一般有如下三种方式:
1,函数关键字(function)语句: function fnMethodName(x){alert(x);} (最常用的方法)
2,函数字面量(Function Literals): var fnMethodName = function(x){alert(x);}
3,Function()构造函数: var fnMethodName = new Function(‘x’,’alert(x);’)
后两种都是把一个函数复制给变量fnMethodName,而这个函数是没有名字的,即匿名函数(拉达姆函数)。
关于event loop
回调时,被回调的函数会被放在event loop里,等待线程里的任务执行完后才执行event loop里的代码。 因此,上述代码会先把线程里的执行完后,再执行event loop里的setTimeout函数.。
内置对象
事件模型
所有的事件都要经过捕捉阶段和目标阶段,但是有些事件会跳过冒泡阶段。例如,让元素获得输入焦点的focus事件以及失去输入焦点的blur事件就都不会冒泡。
事件中的方法
click是点击时触发的方法;
change是改变文本框的内容时触发的方法
select是选中时触发的方法
bind是被选元素(class或id)添加一个或多个事件处理程序,并规定事件发生时运行的函数。
关于数组
push返回数组的新的长度
reverse、sort返回数组本身
concat返回被连接数组的一个副本。
typeof
typeof Symbol() //"symbol"
typeof Number() //"number"
typeof String() //"string"
typeof Function() //"function"
typeof Object() //"object"
typeof Boolean() //"boolean"
typeof null //"object"
typeof undefined //"undefined"
css3
outline
outline-offset
box-flex
box-sizing
box-shadow
resize
getBoundingClientRect
getBoundingClientRect是DOM元素到浏览器可视范围的距离(不包含文档卷起的部分)
getClientRects获取元素占据页面的所有矩形区域
vue计算属性和methods
计算属性只有在它的相关依赖发生改变时才会重新取值。这就意味着只要 message 没有发生改变,多次访问 reversedMessage 计算属性会立即返回之前的计算结果,而不必再次执行函数。
这也同样意味着如下计算属性将不会更新,因为 Date.now() 不是响应式依赖:
button中不能嵌套a标签
button标签里面是不可以再添加文本的,可以给按钮加id选择器,在button上面加一个点击的触发事件(click),然后调用js跳转到你要链接到的页面(register.html),举个栗子:$(“#button”).click(function(){window.location.href=”register.html”});//并不是纯js,基于JQuery,所以需要引用脚本文件