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

JavaScript深入浅出

Bosn 资深架构师
难度中级
时长 5小时28分
学习人数
综合评分9.60
492人评价 查看评价
9.8 内容实用
9.5 简洁易懂
9.5 逻辑清晰
  • Javascript类型检测: 1、typeof(适合基本类型及function检测,遇到null失效) typeof 100 --> "number" typeof true --> "boolean" typeof function --> "function" typeof(undefined)--> "undefined" typeof new Object--> "object" typeof [1,2] --> "object" typeof NaN --> "number" typeof null --> "object" ? 2、instanceof(基于原型链,适合自定义对象,也可以用来检测原生对象,在不同的iframe和window间检测时失效) [1,2] instanceof Array === true new Object() instanceof Array === false 3、Object.prototype.toString (适合内置对象和基本类型,遇到null和undefined失效,ie678返回[Object Object]) Object.prototype.toString.apply([]) === "[Object Array]" Object.prototype.toString.apply(function(){}) === "[Object Function]" Object.prototype.toString.apply(null) === "[Object Null]" ==> ie6/7/8返回"[Object Object]" Object.prototype.toString.apply(undefined) === "[Object Undefined]" 4、constructor 5、duck type
    查看全部
  • 在Javascript中,当把一个基本类型尝试以对象的形式去使用的时候, javascript自动将基本类型转换为一个临时的包装类型对象 var str="javascript"; --> new String("javascript"); 但是,当访问完成之后,这个临时对象就会被销毁
    查看全部
  • 1、巧用+ / - 规则转换类型 var num; //定义个变量 如果想将一个变量变为字符串型,则可以加上一个空字符串:num + '' 如果想将一个变量转换成数字,则可以-0: num-0 2、== 比较时会尝试进行隐式转换 ① 类型相同,同严格等于 === ② 类型不同,会尝试机型类型转换(隐式转换)和比较 "1.23"==1.23 --> string转number boolean==? --> boolean转number,true==1,false==0 null==undefined object==number|string --> 尝试把对象转换为基本类型 new String("hi")=="hi" [1,2] == [1,2] 3、严格等于 === 类型不同,返回false 类型相同: null === null undefined === undefined NaN ≠ NaNa new Object ≠ new Object
    查看全部
  • mark
    查看全部
    0 采集 收起 来源:概念与继承

    2015-07-05

  • Javascript数据类型
    查看全部
  • 表达式: 1. 原始表达式 //常量、直接量、关键字、变量 3.14、"test"、null、i、k、j 2. 初始化表达式 //[1,2]、{x:1, y:2} 3. 函数表达式 //var fe = function(){}、(function(){})() 4. 属性访问表达式 //var o = {x:1}、o.x、o['x'] 5. 调用表达式 //func(); 6. 对象创建表达式 //new Func(1,2)、new Object
    查看全部
  • defineProperty() 设置对象属性 propertyIsEnumerable()判断属性是否可枚举; hasOwnProperty() 是否自有属性,而非来自继承
    查看全部
  • 'use strict'严格模式 不允许使用with 不允许未声明的变量赋值(a = 1全局变量) arguments变为参数的静态副本,修改arguments[0] = 100不会影响参数 delete参数、函数名报错 对象字面量属性重复报错var obj = {a:1, a:2},非严格模式a被覆盖=2,严格模式会报错 argument.callee和argument.caller被禁用
    查看全部
  • with不建议使用的几点原因
    查看全部
  • javasciprt运算符
    查看全部
  • 函数不同的调用方式
    查看全部
  • 数组和对象相同点和不同点
    查看全部
  • Array数组的方法
    查看全部
  • hao
    查看全部
  • 也可通过Object.create方法创建对象。
    查看全部

举报

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

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

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