49-判断arr
发表于
|
分类于
前端-02-js基础复习
- instanceof 判断
1 | var ary = [1,23,4]; |
原型链方法
1
2
3var ary = [1,23,4];
console.log(ary.__proto__.constructor==Array);//true
console.log(ary.constructor==Array)//true 这两段代码是一样的通用的方法
1
2
3
4
5var ary = [1,23,4];
function isArray(o){
return Object.prototype.toString.call(o)=='[object Array]';
}
console.log(isArray(ary));
50-深拷贝
发表于
|
分类于
前端-02-js基础复习
1 | var cloneObj = function(obj){ |
51-正则例子
发表于
|
分类于
前端-02-js基础复习
1. js正则表达式(.+)和(.+?)的区别
?疑问号让.+的搜索模式从贪婪模式变成惰性模式。
1 | var str = 'aaa<div style="font-color:red;">123456</div>bbb' |
要在浏览器测试结果的话,输入:
1 | var str = 'aaa<div style="font-color:red;">123456</div>bbb' |
2. js的正则表达式的正则前瞻(?=)和非捕获性分组(?:)有什么区别?
(?=)会作为匹配校验,但不会出现在匹配结果字符串里面
(?:)会作为匹配校验,并出现在匹配结果字符里面,它跟(…)不同的地方在于,不作为子匹配返回。
1 | var data = 'windows 98 is ok'; |
正则表达式中?=和?:和?!的理解
1 | 前瞻: |
53-reduce用法
发表于
|
分类于
前端-02-js基础复习
1.叠加
reduce方法有两个参数,第一个参数是一个callback,用于针对数组项的操作;第二个参数则是传入的初始值,这个初始值用于单个数组项的操作。需要注意的是,reduce方法返回值并不是数组,而是形如初始值的经过叠加处理后的操作。
1 | var items = [10, 120, 1000]; |
1 | var items = [10, 120, 1000]; |
2.转化对象
1 | const calendarTypeOptions = [ |
55-构造函数return语句
发表于
|
分类于
前端-02-js基础复习
1 | <script> |
可以看出:在JavaScript构造函数中:如果return值类型,那么对构造函数没有影响,实例化对象返回空对象;如果return引用类型(数组,函数,对象),那么实例化对象就会返回该引用类型;
1 | function Super(a){ |
56-改写console函数
发表于
|
分类于
前端-02-js基础复习
1 | console.log=(function(log) { |