js个人笔记3

来源:互联网 发布:淘宝客服转接设置 编辑:程序博客网 时间:2024/06/05 10:10

1.push和pop

建立空数组,将数压入其中,arr.push();

while(arr.length!=0){arr.pop()},将数据一个个弹出.

2.indexOf(a,b)

定位返回下标,没找到返回-1;

a=>字符串,即需要定位的字符串;

b=>开始检索的位置,如未定义,则表示从0开始;

3.将函数赋值给对象的属性.当函数作为对象的属性调用时,函数就成为方法;

var o={square:function(x){return x*x}}//对象直接量

var y=o.square(16);

console.log(y);  //y=256

4.闭包

如果一个函数定义了嵌套的函数,并将它作为返回值返回或者存储在某处的属性里,这时就会有一个外部引用指向这个嵌套函数.它就不会被当做垃圾处理,并且它指向 的变量绑定对象也不会被当做垃圾处理.

var scope="global scope";

function checkscope(){

var scope="local scope";

function f(){

return scope;

}

return f();

}

checkscope();  //llocal scope

5.function构造函数

构造函数并不是使用词法作用域,相反,函数体代码的编译总是会在顶层函数执行.

var scope="global";

function constructFuction(){

var scope="local";

return newFunction("return scope");  //无法捕获局部作用域;

//返回值是global.因为通过Function()构造函数;

}

0 0
原创粉丝点击