JavaScript高级程序设计读书笔记 第三章 基本概念

严格模式 为js定义了一种不同的解析与执行模型,对一些不确定的行为进行处理,对一些不安全的操作也会抛出错误。
使用严格模式,加入”use strict”

省略var操作符创建的变量就成了全局变量。
typeof null 返回 object

在使用var声明变量但未对其加以初始化时,这个变量的值就是undefined。

null值表示一个空对象指针。如果定义的变量准备在将来用于保存对象,那么应该将其初始化为null。

NaN(not a number)是一个特殊的数值,用来表示一个本来要返回数值的操作数未返回数值的情况。任何涉及NaN的操作都会返回NaN,其次,它与任何值都不想等,包括他自身。

三个转换数值的函数。

  • Number() 适用于任何数据类型
  • parseInt() 字符串转换为整型
  • parseFloat() 字符串转换为浮点型

Number()

  • true 1 false 0
  • null 0
  • undefined nan
  • 字符串 空串 0 无法转换的字符串 nan

parseInt()

  • 忽略字符串前面的空格,直到找到第一个非空格字符,如果找到的不是数字或负号,返回NaN
  • 0x 16进制
  • parseInt可接受第二个转换时的基数作为参数,如16表示16进制。

parseFloat()

  • 字符串的第一个小数点有效,第二个以后就无效了
  • 16进制的字符串被转换成0
  • 如果解析的是整数,则会返回整数。

String

String() 如果值有toString方法,则调用该方法并返回相应结果。如果是null,返回“null”,如果是undefined,返回“undefined”。

Object类型

Object类型是所有它的实例的基础。它的属性和方法也同样存在与更具体的对象中。

操作符

逻辑与和非属于短路操作,第一个能确定结果,不会求第二个值。
加法操作符 如果有一个操作数是对象,数值或布尔值,则会调用toString方法取得相应的字符串值。减法操作符会调用Number方法。
两组操作符 相等和不相等–先转换再比较 全等和不全等-- 仅比较

语句

switch语句在比较时使用的是全等操作符
函数不介意传递进来多少个参数,也不在意传进来的数据类型,因为内部是用一个数组来表示的,所以js不能实现函数重载。

    原文作者:QJK
    原文地址: https://www.jianshu.com/p/475750d61261
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞