• JavaScript高级程序设计(第三版)学习笔记(2)


    第三章 基本概念

    1、严格模式:对ES3中不确定的行为作出处理,对某些不安全的操作抛出错误。要在整个脚本中启用严格模式,可以在顶部加上"use strict";要在函数中启用严格模式,可以在函数顶部加上"use strict"。

    2、定义变量:有var=>局部变量;省略var=>全局变量。在严格模式下不能定义名为eval或arguments的变量,否则会导致语法错误。

    3、typeof操作符的返回值有6个:undefined、boolean、string、number、object、function。

    4、检测数组不能用typeof(返回object),三种方式:

    • ary instance of Array
    • 原型链
    • Object.prototype.toString.call(ary)

    5、undefined(值:undefined),未初始化的变量值为undefined; null(值:null)。

    6、对于未声明的变量只能执行唯一操作 typeof,且返回值为 undefined;对未初始化的变量执行 typeof 操作返回值同样为 undefined。

    7、Number类型:用IEEE754格式表示。

    • Infinity: 无穷,超出JS数值范围。
    • NaN (Not a Number):(1) 任何数值除以非数值返回NaN; (2) NaN==NaN => false; (3)isNaN(a) => true: a 不是数值(会先尝试将a转换成数值)。

    8、Number()

    • Boolean => 0(false) 或 1(true)
    • 数值=>数值
    • null=>null
    • undefined=>NaN
    • string: (1)只包含数字(包含+ -号),转为十进制(忽略前导零);(2)有效的浮点格式(只有一个小数点),转为浮点值(忽略前导零);(3)有效的十六进制格式,转为十进制;(4)空串,转为0;(5)除此以外,转为NaN
    • object: 先调用valueOf()方法,然后依照上式规则转换,若结果为NaN,则调用对象的toString()方法,再按照上述规则进行转换。

     9、parseInt():string=>整数

    • 找到第一个非空格字符串
    • 如果第一字符不是数字或者'-'=>NaN
    • 如果第一个字符是数字字符或者'-', 继续解析,知道遇到第一个非数字字符。
    • parseInt("")=>NaN
    • 第二个参数表示转换的基数

    10、parseFloat()与parseInt()类似,第一个小数点有效,其他均无效。

    11、 String类型

    • 字符串一旦被创建,他们的值就不能改变(先销毁再填充)
    • 转换字符串的三种方式:(1) a.toString(); (2) String(a); (3) a+""
    • toString(): (1) 参数:传递基数;(2)undefined和null没有toString()方法
    • String(): (1) 如果参数有toString()方法,则调用该方法(无参数)并返回相应的结果;(2)如果参数是null=>null; (3) 如果参数是undefined=>undefined

    12、Object的每个实例都具有下列属性和方法

    • constructor:保存着用于创建当前对象的函数。
    • hasOwnProperty(propertyName): 用于检测给定的属性在当前对象实例中(不是实例的原型中)是否存在,其中propertyName必须是字符串。
    • isPrototypeOf(object): 用于检查传入的对象是否是当前对象的原型。
    • properIsEnumerable(propertyName): 用于检查给定的属性是否能够使用for-in语句来枚举,其中propertyName必须是字符串。
    • toLocalString(): 返回对象与执行环境有关的字符串表示。
    • toString(): 返回对象的字符串表示。
    • valueOf(): 返回对象的字符串、数值或布尔值表示(通常与toString()方法的返回值相同)。
  • 相关阅读:
    git常用命令学习(转)
    论docker中 CMD 与 ENTRYPOINT 的区别(转)
    常见算法:C语言求最小公倍数和最大公约数三种算法
    iPhone开发【一】从HelloWorld開始
    网页代码优化
    北京簋街 美食全然攻略 + 簋街好吃的夜宵去处-----店铺介绍大全
    strtok和strtok_r
    Swift 编程语言新手教程
    java中获取系统属性以及环境变量
    读《自由人》
  • 原文地址:https://www.cnblogs.com/TiffanyHYY/p/7018737.html
Copyright © 2020-2023  润新知