zoukankan      html  css  js  c++  java
  • JavaScript高级程序设计——第3章:基本概念

    3.4 数据类型

    1)typeof是操作符,而不是函数,所以typeof()中的括号不是必需的:

    var message="hi";

    alert(typeof message);

    2)undefined值派生自null值,alert(null==undefined)//true

    3)可以对任何数据类型调用Boolean()函数,而且总会返回一个Boolean值。至于返回的这个值是true或false,取决于要转换的数据类型及其实际值。

    数据类型  转换为true值  转换为false值 
     Boolean  true false 
     String  任何非空字符串 空字符串 
    Number   任何非零数字值(包括无穷大) 0和NaN
    Object   任何对象 null 
    undefined   n/a(或N/A)是 not applicable缩写,意为“不适用” undefined 

    4)永远不要做下面这种测试,a+b的实际结果是0.30000000000000004。关于浮点数值计算会产生舍入误差的问题,这是使用基于IEEE754数值的浮点计算的通病。ECMAScript并非独此一家,其它使用相同数值格式的语言也存在这个问题。

    a=0.1;

    b=0.2;

    if(a+b=0.3){//不要做这样的测试

    alert("You got 0.3");

    }

    5)数值范围

    ECMAScript能够表示的最大值保存在Number.MAX_VALUE中,能够表示的最小数据保存在Number.MIN_VALUE中,超出这个数值范围的值,自动转换成Infinity(正无穷)和-Infinity(负无穷)。isFinite()函数确定一个数值是不是有穷的。

    3.7 函数

    定义的函数只接收两个参数,在调用这个函数的时候不一定要传两个,可以传一个、三个或者不传,解析器永远不会有怨言。这是因为ECMAScript中函数的参数是用一个数组表示的,函数接收到的始终是这个数组,在函数体内可以通过arguments对象来访问这个参数数组。arguments对象只是与数组类似(它不是Array的实例),因为可以使用方括号语法访问它的每一个元素(即第一个元素是arguments[0]......)。

  • 相关阅读:
    编写高质量的代码,改善c#程序的157个建议_之1~10
    文件指针创建失败!File *fp失败
    一拜天地
    现金流中的机会,及其评估(摘抄)
    隐藏Mac Dock 中的某个图标
    vim快捷方式
    mac 快捷键
    mysql explain
    druid 连接池配置
    分布式数据库中间件
  • 原文地址:https://www.cnblogs.com/SmileX/p/5630150.html
Copyright © 2011-2022 走看看