美文网首页
JavaScript基本知识(一)

JavaScript基本知识(一)

作者: 岩蔷薇 | 来源:发表于2017-03-08 11:18 被阅读0次

    1.javascript的组成:

    DOM:文档对象模型。核心对象:document

    BOM:浏览器对象模型。核心对象:window

    ECMAScript:定义了js的核心语法

    2.js中的数据类型:基本数据类型和复杂数据类型、

    基本数据类型:string number Boolean null undefined

    复杂数据类型:Object对象类型

    Object Array Date Function RegExp(正则表达式) Number(数值对象) String(字符串对象)Boolean

    3.判断数据的类型 typeof

    格式:typeof 数值(变量)

    结果:typeof 字符串 //string

               typeof 数值  //number

               typeof true/false    //boolean

               typeof undefined    //undefined

               typeof null          //object

               typeof 复杂数据类型  //object

               typeof 函数          //function

    注意:typeof本身是操作符,不是函数

    typeof本身有返回值,返回值是字符串类型

    null和undefined的区别:

    undefined:声明了变量,但未赋值

    null:变量的值永远不会为null,除非手动设置

    4.逻辑运算符

    逻辑非(!表达式):返回值     Boolean

    逻辑与(表达式1 && 表达式2):返回值     其中的某个表达式、

    判定:检查表达式1是否为真,若为真,返回表达式2;否则返回表达式1

    逻辑非(表达式1 || 表达式2):  返回值    其中的某个表达式

    判定:检查表达式1是否为真,若为真,返回表达式1;否则返回表达式2

    5.值类型和引用类型

    值类型:string,number,Boolean,undefined,null

    引用类型:(object类型) function,Array,Date,String

    值类型和引用类型的区别:

    i.存储的位置不同。

    值类型存储在栈中,值类型变量,栈中存储的就是该变量的值。

    引用类型存储在堆上,新建一个引用类型实例,得到的变量值对应的是该实例的内存分配地址。

    ii.值传递和引用传递不同。

    值传递相当于拷贝值,虽然两个变量的值一样,但两个变量在栈中的存储空间不同,所以是不同的。

    引用传递不一样,引用类型包含的是对上数据区域地址的引用,相当于指针,指的是同一块内存区域。因此当其中一个引用的值发生了变化,另一个指向该内存中的值也会发生改变。

    注意:javascript中,字符串为值类型。但,字符串在复制和传递运算中,以引用型数据的方法做处理!!

    6.in关键字的使用

    作用:(1)遍历对象;(2)检测对象中是否存在指定的属性    语法: “属性” in 对象        返回值:boolean

    注意:属性必须是字符串

    在操作数组是,key--索引, value--元素、

    7.delete

    作用:(1)删除对象中的属性;(2)删除没有使用var声明的变量

    注意:(1)返回值为Boolean;

    (2)不能删除没有使用var声明的全局变量,但却可以删除直接定义在window上的属性

    (3)删除不存在的属性没有反应,返回值为true

    8.javascript错误-throw,try和catch

    try语句:   测试代码块的错误

    catch语句:   语句处理错误

    throw语句:   创建自定义错误(throw errObj)

    errObj必须是一个Error对象或Error的子类型.

    基本语法:

    try{

    //此处是可能产生例外的语句

    }catch(error){

    //此处是负责例外处理的语句

    }finally{

    //此处是出口语句

    }

    上面的代码中.try块的语句首先被执行.如果运行中发生了错误,控制就会转移到位于catch块中语句,其中括号中的error参数被作为例外变量传递. 否则,catch语句就跳过不执行. finally语句在try和catch语句执行完后执行.

    (1)Error对象:name属性表示例外的类型,message属性表示例外的含义.根据这些属性的取值,可以决定处理例外的方式.

    Error.name的取值一共有六种:

    Error:()的使用与定义不一致

    RangeError:数据越界

    ReferenceError:非法或不能识别的引用数值

    SyntaxError:发生语法解析错误

    TypeError:操作数类型错误

    URIError:URI处理函数使用不当

    相关文章

      网友评论

          本文标题:JavaScript基本知识(一)

          本文链接:https://www.haomeiwen.com/subject/enahbttx.html