zoukankan      html  css  js  c++  java
  • JavaScript学习笔记——Javascript基本语法

    JavaScript学习笔记——Javascript基本语法

    本文是对《Professional:JavaScript for Web Developers》第三章:Language Basic所做的笔记
    ----------------------------------------------------------------------------------
    JavaScript是类C语言,因此基本语法和C很像。因此,以下笔记是和C有所不同的,或者特别需要注意的。
    数据类型:
    •      JS定义变量的时候,并不指定是哪个数据类型。
    •      JS有五种基本数据类型,分别是:Undefined,Null,Boolean,Number,String
    •      其中,Undefined是未赋值的变量的默认值。尽管如此,还是推荐给每个变量赋初值。
    •      Number中包含int和float类型;其中float类型可以表示为科学计数法形式:3.1e12。
    •      Number数字的最大最小值:最大值:Number.MAX_VALUE;最小值为Number.MIN_VALUE;超过这个大小的表示为Number.INFINITY。
    •      NaN表示不是一个数字(Not a number)。用函数NaN()可以判断是否为一个Number。
    •      对于一个对象(Object)类型,调用其valueOf()函数,首先用NaN判断是否为数字,然后返回其toString()。
    •      转型为Number:Number(),parseInt(),parseFloat();如果String中只含有数字,则表示为int或者float,否则返回NaN。其中,parseInt(" A STRING", a int number),第二个参数表示进制,一般为2/8/16。
    •      String中,\xnn表示ACSCII码,\unnnn表示Unicode字符。String的length属性可以判断其长度。
    •      null和undefined没有toString()方法。
    •      对象类型,使用new来创建,同样有Constructor, hasOwnProperty(PropertyName),isProtorypeOf(Object),toLocaleString,toString(),valueOf();其中valueOf()返回值基本上等于toString()的返回值。
    操作符:
    •      ++,--操作符可以对非int的对象进行操作,操作前进行转型。float对象,对其整数部分进行操作;仅包含Number的String,转为Number后操作,其他String出错;true按照1来处理,false按照0来处理。
    •      保存数字占用64bit内存,但是在转换时候,先转为32bit的,然后在存为64bit的。存储方式详见组成原理一书。
    •      位操作:~、&、|、^(异或)、<<、>>
    •      比较运算符中,对比字符串,按照字符ASCII排序,如果一个是String,一个是Number,转为Number。
    •      ==操作中,Object的toString()和String进行比较。
    •      NaN!=NaN;Object中,不是指向同一个的Object不相等。
    •      ===是不进行类型转换的比较。如"55"==55;"55"!==55
    控制语句:
    •      for ( ... in ... ) 类似于遍历。
    •      with语句:例如var a=X.A; var b= X.B 可以写成with(X){ var a = A; var b = B }
    •      switch中,case可以是变量。
    函数:
    •      函数的返回类型不需要事先声明,直接在想返回的地方return即可。如果return;则返回undefined。
    •      函数的参数本质是一个参数数组,因此,你可以不管声明了几个,可以传递任意个数的参数。传递进来的参数的调用也可以通过arguments进行。例如 funciton add(x,y){return x+y;}也可以写成这样:function add(){return arguments[0]+arguments[1];}。
    •      函数不能重载。

    其余未提及的部分,基本和C语言是相同。
  • 相关阅读:
    如何关闭内存自动释放池ARC
    你怀疑过“温水煮青蛙”的故事吗
    程序员应该加入的3个QQ群
    简述Oracle 11g 新特性
    ViewState、UpdatePanel及控件OnPre之间的纠葛
    今天,我看到一组图解释“ 什么是博士?”
    Java将何去何从
    给新手朋友 推荐几本书(从C#入门到SQL及设计模式)
    最新版 智能电脑键盘屏幕全记录 免费下载
    C#中两个问号和一个问号
  • 原文地址:https://www.cnblogs.com/XuYankang/p/2577688.html
Copyright © 2011-2022 走看看