-
封装属性查看全部
-
普通函数:调用之后就被释放 闭包作用:点击事件,用到外部变量,有了闭包会更加方便。 循环闭包的错误:如图错误。addEventListener()是一个回调函数,当我点击的时候才会获取这个i的值。但i在整个初始化的时候i已经是4。解决方法加多一个立即执行的匿名函数。 闭包的好处:函数有自己的作用域,定义的变量外部访问不到。封装具体的复杂的函数逻辑查看全部
-
splice查看全部
-
1.join()方法 默认是将字符串转换为字符串,并以“,”隔开元素,而join()中的参数就是替换字符串中的“,”, 而new Array(n+1).join(str)的原理是,创建一个n+1大小的数组,若用join()方法会产生含n个“,”的字符串,而str正好代替这些“,”以造成重复n次str参数的字符串。(n+1)个数组元素,join()有n个逗号 2.reverse()方法 将数组的顺序颠倒,注意:原数组会被改变成颠倒后的数组。 3.sort()方法 sort()方法只会对数组进行字符顺序上的排序,例如a,b,c,d,而如果是数字,则会取第一位数的字符顺序进行排序,改完以后原数组会被修改。如果想用sort进行数字上的排序,则应写入函数参数function(a,b){return a-b;},这是升序排列,反之降序是b-a。 4.concat()方法 作用是合并数组,返回值是合并后的数组,原数组不会改变。如果参数是一个一维数组(没有嵌套),则合并的时候会拉平数组,如果是嵌套数组,合并后只会拉平最外一层。 5.slice()方法 切断数组,原数组不会修改,如果传入一个参数n,则返回第n+1个到最后一个元素的数组,如果传入n,m,则返回第n+1到m元素的数组,-1代表最后一个元素,-2代表倒数第二个元素,以此类推,若输入的参数为负数i,j,则返回倒数第|i|个到倒数第|j|+1个元素,总结来说,对于正数,左区间开,对于负数,右区间开。 6.splice胶结方法 切断数组胶结数组,原数组会被修改,输入参数n,那么原数组第n+1个元素到最后一个元素都会被删除(会作为该函数的返回值),如果输入参数m,n,则删除第m+1个到第m+n个元素。如果输入两个以上的参数则删除前两个参数所指定的元素,替换上剩下的参数。查看全部
-
ES5特性下的arr函数 1.forEach(function(x,index,a){ do something });按数组长度循环,每次循环中,参数x为当前循环的元素,index为下标,a为指向本数组的指引。 2.map(function(x){ do something }); 也是将数组循环,x为当前循环的元素。不会修改原数组。 3.filter(function(x,index){return % 3 === 0|| x>8; }); 可以按function内的条件过滤数组。不会修改原数组。 4.arr.every(function(x){return x<10;})判断数组每个元素是否满足条件,arr.some()则是判断数组内是否含有满足条件的元素。 5.reduce(function(x,y){return x+y;},0);数组元素两两作运算(从左开始),reduceRight则是从右开始。不会改变原数组。 6.indexOf() 检索参数在数组中所在的下标。lastIndexOf(),从右边开始查找 7.isArrray([]); [] instanceof Array; ({}).toString.apply([])==='[object Array]' [].constructor===Array; 都是判断是否为数组的方法。查看全部
-
稀疏数组的“空位”什么元素都没有,只有索引,所以in关键字判断该位置为false,这和含有undefind是不一样的。查看全部
-
函数声明不是可以立即调用的吗? $(document).ready(function(){ (function foo(){ console.log(5+6); alert(11); }()); //foo(5,6); }) 这样写能输出啊。 或者这样,括号在外面,也能 $(document).ready(function(){ (function foo(){ console.log(5+6); alert(11); })(); //foo(5,6); })查看全部
-
function add(a,b,c){ return a+b+c; } var func = add.bind(undefined,100); //a绑定100 func(1,2);//103 var func2 = func.bind(undefined,200); //b绑定200 func2(10);//310查看全部
-
.call( object,参数, 参数,); .apply( object,[参数,参数]);查看全部
-
数组VS对象: 相同点:都可以继承,数组是对象,对象不一定是数组,都可以当作对象添加删除属性。 不同点:数组自动更新length,按索引访问数组常常比访问一般对象属性明显迅速。数组对象继承Array.prototype上的大量数组操作方法。查看全部
-
学习笔记查看全部
-
题目不错 代码尽量简洁了查看全部
-
function add(a,b,c){ return a+b+c; } var func = add.bind(undefined,100); //a绑定100 func(1,2);//103 var func2 = func.bind(undefined,200); //b绑定200 func2(10);//310查看全部
-
arr[arr.length]=4 在尾部添加一个元素4 delete arr[2] 将第三个元素赋为undefined arr.unshift(0) 在头部添加一个元素0 arr.length -=1 删除数组的最后一个元素 arr.pop() 在尾部删除一个元素 arr.shift() 从最前面删除一个元素查看全部
-
数组push()查看全部
举报
0/150
提交
取消