JavaScript
一口咬掉牛尾巴
这个作者很懒,什么都没留下…
展开
-
JavaScript严格模式
严格模式主要有以下限制。变量必须声明后再使用 函数的参数不能有同名属性,否则报错 不能使用with语句 不能对只读属性赋值,否则报错 不能使用前缀 0 表示八进制数,否则报错 不能删除不可删除的属性,否则报错 不能删除变量delete prop,会报错,只能删除属性delete global[prop] eval不会在它的外层作用域引入变量 eval和arguments不能被重...转载 2019-03-26 20:37:43 · 193 阅读 · 0 评论 -
for...in和for...of
1、for...infor...in可以迭代对象的可枚举属性遍历对象时,先顺序遍历对象的以数字为键的属性,然后是顺序遍历以字符为键的属性,而且访问的是属性名let obj = { 1 : 1, a : 2, 2 : 3, fn : function (){}, b : 4}for(let item in obj){ console....原创 2019-03-24 10:22:37 · 151 阅读 · 0 评论 -
document.ready和w_indow.onload
window.onload网页中所有元素完全加载到浏览器后执行,即JavaScript可以访问网页中的所有元素window.onload = function (){ //do something}document.ready在DOM完全加载之后执行$(document).ready(function (){ //do something})//简写...原创 2019-07-20 21:43:01 · 118 阅读 · 0 评论 -
instanceof和typeof
instanceof用法 A instanceof B官方说法是用于测试构造函数的prototype(B)属性是否出现在对象(A)的原型链的任何位置,即constructor.prototype(A)是否存在于object(B)的原型链function Animal(head, feet, tail){ this.head = head this.feet ...转载 2019-07-21 10:12:47 · 131 阅读 · 0 评论 -
递归函数优化--尾递归
铺垫函数的调用会在内存中形成一个调用记录,也称作“调用帧”,用来保存调用位置和内部变量等信息。内存中用一个栈结构来保存调用帧,也称“调用栈”。函数被调用时调用帧入栈,函数返回时调用帧弹栈。当发生函数的嵌套时,如在A函数中调用B函数,就会有连续的两个调用帧入栈function A(){ ... B(); ...}当B函数返回时,B调用帧弹栈,继续执行A函数...原创 2019-08-04 14:03:11 · 266 阅读 · 0 评论 -
js深浅拷贝
浅拷贝用ES6语法实现是相当简单的function shadowClone(target){ return {...target}}深拷贝 function deepClone(target){ let result = Array.isArray(target) ? [] : {}; for(let key in target)...原创 2019-08-10 21:08:39 · 116 阅读 · 0 评论