码迷,mamicode.com
首页 > 编程语言 > 详细

Javascript高级程序设计——第三章:基本概念

时间:2015-08-29 23:02:35      阅读:192      评论:0      收藏:0      [点我收藏+]

标签:

javascript高级程序设计——第三章:基本概念

一、语法

  EMCA-262通过叫做ECMAScript的“伪语言”为我们描述了javascript实现的基本概念

  javascript借鉴了C的语法,区分大小写,标示符以字母、下划线、或美元符号($)开头,注释可以用 // 或者/* */

  严格模式:

  ECMAScript 5引入了严格模式,在严格模式下不确定的行为将得到处理,通过在顶部添加 “use strict”来启用严格模式:

function fuc(){
    "use strict";
   //函数体 }

  这行代码是一个编译提示,告诉支持javascript的引擎切换到严格模式。

  变量:

  ECMAScript的类型是松散类型的,可以保存任何类型的数据

  通过使用var来声明变量:

var message,
      num.
      str;

 

  当省略var关键词时,自动创建全局变量。
  数据类型:

  六种数据类型
    1、Undefined
    2、Null
    3、Boolean
    4、Number
    5、String
    6、Object(一组无序的名值对组成)

  
操作符:typeof 注意不是函数,可用于变量或者数值字面量。
  
  Undefined:
    Undefined类型只有一个值,即特殊的undefined,
    当变量定义未初始化时,其值为undefined。
    var test;
    typeof test == "undefined"    //true
     对未声明的变量执行typeof操作时也会返回undefined
  
  Null:
    Null类型的值为null,表示一个空对象指针,
    
    undefined值派生自null值.
    typeof null == ‘object‘;
    如果定义的变量准备在将来用于保存对象,最好将变量初始化为null,而不是其他值,
    这样只要检测是否是null值就可以知道变量是否已经保存一个对象的引用。

  Boolean:
    Boolean类型,值为true 和 false,区分大小写。
    任意一个数据类型要转换成Boolean只需调用转型函数Boolean()
var msg = "hello";
var msgToBool = Boolean(msg); //true
数据类型  转换为true 转换为false
 Boolean      true  false
 String  非空字符串    ""空字符串
 Number  非零数字   0和NaN
 Object  任何对象 null
 Undefined  不适用   undefined

  控制留语句(if)自动执行相关的Boolean转换。
  
  Number:
    用IEEE754来表示整数和浮点数值,
    
var intNum = 55           //整数
var octNum = 020          //八进制在严格模式下无效,抛出错误
var hexNum = 0xa          //十六进制
算数运算时都转化为十进制数值。
数值范围
Number,MIN_VALUE;
Number.MAX_VALUE ;
超过范围则返回Inifinity,不能参与运算。

  NaN
    非数值(Not a Number)是一个特殊的数值,这个数值用于一个本来要返回数值的操作数未返回数值的情况。例如:ECMAScript中任何数值除0会返回NaN.

    函数isNaN(),确定参数是否“不是数值”;

    isNaN(NaN)   //true

    isNaN("10")  //false 转化为10
    
    isNaN("blue") //true

   数值转换


var num = parentInt("1234blue");                //1234
var num = parentInt("")                         //NaN
var num = parentInt("0xa")                      //10
var num = parentInr(22.5)                       //22
var num = parentInt("070")                      //56
var num = parentInt("70")                       //70

解析八进制时ECMAScript 3 和 ECMAScript 5存在分歧
var num = parentInt("070")                      //56   ECMAScript 3
var num = parentInt("070")                      //70   ECMAScript 5

第二个参数指定基数
var num = parentInt("AF", 16)                   //175
var num = parentInt("AF");                     //NaN    

parentFloat()只转换10进制。

 

Javascript高级程序设计——第三章:基本概念

标签:

原文地址:http://www.cnblogs.com/yangxunwu1992/p/4769835.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!