javascript深刻浅出 基础

 

数据类型web

    六种数据类型:安全

        numberapp

        string函数

        boolean优化

        nullthis

        undefinedspa

        objectprototype

    隐式转换:code

        巧用+和-
orm

            num-0    转换为数字

            num+''    转换为字符串

        ===

            null===null

            undefiend=undefined

            NaN ≠ NaN

            new Object ≠ new Object

        类型比较转换原则

            字符串转数字

            布尔转数字

            对象转基本类型

    包装对象:

        三种包装类型


            number

            string

            boolean


        能够调用对象属性

        设置属性不生效,能够使用new 对象()

    类型检测:

            typeof    

                基本类型和function

            [[Class]]

                Object.prototype.toString.apply(变量)

                获取内置对象的基元类型    [Object Date],[Object Array],[Object Object]

            instanceof

                判断对象是否属于某个类


表达式和运算符

    表达式:    能计算出值得程序单元

        原始表达式

        初始化表达式

        函数表达式

        属性访问表达式

        调用表达式

        对象建立表达式

    运算符:

        赋值

        算术

        字符串

        比较

        逻辑

        位

        特殊

            条件运算符

            逗号运算符

            delete

            in

            instanceof

            typeof

            new

            this

            void


语句

    函数,for...in,with:

        函数定义方式

            函数声明    任何地方可调用

            函数表达式    后面才能调用

        for...in

            顺序不肯定

            enumerable 为false不出现

            受原型链影响

        with

            传入对象,在块语句中能够把属性当变量使用

            让js引擎优化更难

    try-catch:

        try

            尝试执行

            出现一个异常就退出try

        catch

            捕捉和处理异常

        throw

            自定义异常

1
throw  '未定义' ;

        finally

            最终执行,确定会执行

            感受意义不大

         示例
1
2
3
4
5
6
7
try {
     console.log(str);
catch (err){
     console.log(err);
} finally {
     console.log( 'finally' );
}


    严格模式:

        做用

            语法更合理,更严谨

            提供更强的错误检查,提供安全性

        使用方式 'use strict'

            放在文件头部

            放在函数中

        使用范围

    ​    ​    ​不容许with

    ​    ​    ​不容许 delete 函数参数

    ​    ​    ​不容许8进制字面量

    ​    ​    ​eval,arguments变为关键字,不能作变量

 
相关文章
相关标签/搜索