为了账号安全,请及时绑定邮箱和手机立即绑定

JavaScript深入浅出

Bosn 资深架构师
难度中级
时长 5小时28分
学习人数
综合评分9.60
493人评价 查看评价
9.8 内容实用
9.5 简洁易懂
9.5 逻辑清晰
  • arr.reduce(function(x,y){}); 数组操作,可自定义需要的返回值 Array.isArray([])//判断是否为数组
    查看全部
  • arr.map(function(obj){})//数组映射 arr.filter(function(obj,index){})//数组过滤,筛选符合条件的元素 arr.every(function(obj){return obj>3;})//数组判断,判断数组里的元素是否全部符合条件 arr.some(function(obj){return obj>3;})//数组判断,判断数组里的元素是否存在至少一个符合条件
    查看全部
  • arr.forEach(function(obj,index,arr){}) 数组遍历,obj为具体元素,index是下标,arr是数组本身
    查看全部
  • arr.splice(a,b);数组拼接;修改原数组,返回新数组 将a-b范围内的元素返回,原数组由剩余元素组成
    查看全部
  • arr.splice();数组拼接;修改原数组,返回新数组
    查看全部
  • arr.join();//数组转字符串,默认逗号隔开 arr.reverse();//数组逆序,原数组被修改 arr.sort();//排序,原数组被修改 arr.sort(function(a,b){return a-b;});//可自定义排序 arr.concat();//数组合并,原数组未修改,返回新数组 arr.slice(a,b);//返回a-b之间的部分数组,原数组未修改,返回新数组
    查看全部
  • arr.push()在数组尾部添加 arr.unshift()在数组头部添加元素 arr.pop()和arr.length -=1 删除尾部元素 arr.shift();删除头部元素 数组的最大长度是2^23-1
    查看全部
  • function getType(o){ return Object.prototype.toString.call(o).slice(8, -1); } var i = 0, n = arr1.length, countMap1 = {}, countMap2 = {}, t1, t2; for (; i < n; i++) { t1 = getType(arr1[i]); t2 = getType(arr2[i]); if (countMap1[t1]) { countMap1[t1]++; } else { countMap1[t1] = 1; } if (countMap2[t2]) { countMap2[t2]++; } else { countMap2[t2] = 1; } } if (Object.keys(countMap1).length != Object.keys(countMap2).length) { return false; } for (var key in countMap1) { if (countMap1[key] != countMap2[key]) return false; }
    查看全部
    0 采集 收起 来源:编程练习

    2018-03-22

  • 创建对象: 1.1对象直接量——最简单的方式。var point={x:0 , y:0}【若干名/值对组成的映射表】 1.2通过new创建对象——创建对象的过程就是使用构造函数。 1.3原型——每一个对象都从原型继承属性.Object.prototype是没有原型的对象。 1.4Object.create()——可以通过传入参数null来创建一个没有原型的新对象。
    查看全部
  • extensible标签 禁止对象添加属性 修改属性 等 Object.isExtensible([obj]) 检验对象是否可以扩展 Object.preventExtensions([obj]) 阻止对象被扩展 Object.seal([obj]) 使对象的属性不能被配置,即configurable的属性标签设定为false Object.isSealed([obj]) 判断对象是否为不可配置 Object.freeze([obj]) 将对象的configurable属性标签以及writable属性标签设置为false
    查看全部
  • proto标签指向Object.property属性 JSON.parse();//字符串转对象 JSON.stringify();//对象转字符串
    查看全部
  • Object.getOwnPropertyDiscriptor(obj,"x")//获取对象的属性标签 修改多个属性标签 Object.defineProperties(obj,{ title:{value:"xxx"}, name:{configurable:true} sex:{ get:function(){ return "nan" } } } );
    查看全部
  • 1、configurable:是否可配置。getOwnPrototypeDescriptor(obj,属性) 2、in操作符会向原型链向上查找的,hasOwnProperty自己有没有(用在for in判断过滤原型上的属性)。 3、Enumerable:是否可枚举。 4、Object.defineProperty自定义对象属性 Object.defineProperty(obj,"price",{enumerable:false,configurable:false,value:1999})// obj.hasOwnProperty("price")//判断是否是自身属性 obj.propertyIsEnumerable("price")//判断是否可枚举 5、!=undefined。就是不等于null和undefined
    查看全部
  • JS中没有块级作用域,例如for循环中的i在外面也能被获取到
    查看全部
  • typpeof 判断基础类型以及function检测,遇到null失效(返回“object”) object.prototype.toSting 适合内置对象和基元类型,遇到null和undefined失效(IE678等返回[object object]) instanceof 适合检测自定义对象原生对象,在不同的iframe和window失效
    查看全部

举报

0/150
提交
取消
课程须知
1.您至少学习了本站“JS入门”、“JS进阶”两门基础课程。 2.如您具备一定实践经验对学习有很大帮助。 3.如您没有脚本编程开发经验,学习过程有可能会受挫部分内容或示例代码,请“暂时略过不懂的部分,后面章节会阐述”,当然想透彻学习,还需大量实践来体会知识的内涵。
老师告诉你能学到什么?
结合实例,深入解析以下知识内容: 1. 数据类型、表达式和运算符、语句; 2. 对象、数组、变量、函数; 3. this、闭包和作用域; 4. OOP; 5. 正则与模式匹配。

微信扫码,参与3人拼团

微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!