发表于: 2017-05-07 23:46:43
2 1026
今天完成的事:
理解this。
学习正则表达式。
明天计划的事情:
做任务2
弄懂闭包。
遇到的问题:
闭包和this混在一起感觉越来越难懂了。。
收获:
1,数组乱序排列:
var arr = [1,2,3,4]
var res = [];
for (var i = 0, len = arr.length; i < len; i++) {
var j = Math.floor(Math.random() * arr.length);
res[i] = arr[j];
}
console.log(res);
用了floor向下取值和arr.length比arr的最大index大1的特性。
2,正则表达式
a,表示方法
var a=/pattern/flags;
patter部分是正则表达式规则,flags部分表示正则表达式的模式。
flags模式有:
g 全局模式
i 不区分大小写
m 多行查找
3,this指针
this总是指向调用函数的那个对象:
var age=1;
function func(){
alert(this.age);
}
func();//1 window对象
var obj={};
obj.age=11;
obj.sayage=func;
obj.sayage();//11 obj对象
obj.sayage.apply();//1 定义作用域为window对象
obj.sayage.apply(obj);//11 定义作用域为obj对象
4,为基本类型添加属性和方法:
Number.prototype.pi=3.14;
Number.prototype.add = function (x) {
return this + x;
};
(8).add(2); // 10(8).pi; //3.14
评论