Has 5 primitive types: Undefined, Null, Boolean, String, Number.

typeof  operator

Undefined return undefined

Null return object

Boolean return boolean

String return string

Number return number

Null returns object, this is an error in the original JS. Today, null is considered a placeholder for an object,  even though, it is a primitive types.

The Undefined Type

Use typeof with Object undefined, it also give "undefined", like the variables defined but not initialized.

The Null Type

alert(null == undefined);  //outputs "true"

Even though this is equal, they have different meanings.

The Boolean Type

true false

The Number Type

Number can present 32-bit integer and 64-bit floating point value.

Define floating-point value, you should use like: var fNum = 5.0; This will stored as string, and converted to number until calculation.

e-notion:  var fNum = 3.125e7, fNum2=3.125e-7;

Number.MAX_VALUE  Number.MIN_VALUE

>Number.MAX_VALUE  ->   Number.POSITIVE_INFINITY

<Number.MIN_VALUE   ->   Number.NEGATIVE_INFINITY

Function isFinite(value) returns Boolean

NaN: When convert from other type and failed, the number value is NaN, can't calculate.

alert(NaN == NaN);  //outputs "false"

Function isNaN(value) returns Boolean

The String Type

''

""

Conversions

Converting to a string

Booleans, numbers, strings are pseudo-objects.

All objects, include   pseudo-objects, all have toString().

Boolean:   true  false

Number:

var num = 10;

alert(num.toString());   //10

alert(num.toString(2)); // 1010

alert(num.toString(16)); // A

Converting to a number

parseInt():  validate the character in position 0 and determines if this is a valid number, if it isn't , return NaN, else continue untile a character isn't a valid number, and parse the part of valid.

var iNum1 = parseInt("123blue"); //returns 123

var iNum1 = parseInt("22.5"); //returns 22, decimal point is not valid

var iNum2 = parseInt("10", 2) ;//returns 2

var iNum3 = parseInt("0XA");//returns 10

var iNum4 = parseInt("010");//returns 8

var iNum5 = parseInt("010", 10);//returns 10

parseFloat(): if have more than one decimal point, all are invalid except the first one. No radix mode.

var iNum1 = parseFloat("12.34.56"); //returns 12.34

var iNum2 = parseInt("123blue"); //returns 123.0

var iNum3 = parseInt("010");//returns 10

var iNum4 = parseInt("0XA");//returns NaN

Type Casting

Boolean(value)

String with at least one character, a number other than 0, or an object: return true;

Empty string, the number 0, undefined or null, return false.

Number(value)

Works similar to parseInt() & parseFloat(), except that it converts the entire value.

String(value)

Like toString(), but can produce a string for a null or undefined value without error.

var s1 = String(null);   //"null"

var oNull = null;

var s2 = oNull.toString();  //won't work

Reference Types

ECMAScript doesn't have classes in the traditional sense. ECMAScript defines "object definitions" that are logically equivalent to classes in other programming languages.

The Object class

Like the java.lang.Object in java.

Properties

constructor

prototype

Methods

hasOwnProperty(property)

isPrototypeof(object)

toString()

valueOf()

The Boolean Class

var oFalseObject = new Boolean(false);

Var bResult = oFalseObject  && true;    //outputs true

Because all objects converted to true.

The Number class

toFixed(), toFixed(n): returns a string representation of a number with a specified number of decimal points.      0 <= n <= 20

toExponential(n): returns a string with the number formatted in e-notation.

toPrecision():

var oNumberObject = new Number(99);

alert(oNumberObject .toPrecision(1));  //outputs "1e+2"

alert(oNumberObject .toPrecision(2));  //outputs "99"

alert(oNumberObject .toPrecision(3));  //outputs "99.0"

The String class

The String class has length property.

charAt(): returns a string containing the character in that position.

charCodeAt():

Chapter 2 JavaScript Basic的更多相关文章

  1. 《JavaScript高级程序设计》chapter 1: javascript 简介

    1.2.2 文档对象模型     DHTML的出现让开发人员无需重新加载页面就可以修改其外观了. 1.2.3 浏览器对象模型(BOM)     BOM真正与众不同的地方在于他作为javascript实 ...

  2. Javascript Basic Operation Extraction

    1.  logic operation : '&&' and '||'  .For this two logic operations,its' results are inconcl ...

  3. JavaScript Basic

    Exercise-1 Write a JavaScript program to display the current day and time in the following format. T ...

  4. JavaScript Basic Memo

    1.this 的指向 1).由 new 调用?绑定到新创建的对象. 2). 由 call 或者 apply(或者 bind)调用?绑定到指定的对象. 3). 由上下文对象调用?绑定到那个上下文对象. ...

  5. JavaScript- The Good Parts CHAPTER 2

    I know it well:I read it in the grammar long ago.—William Shakespeare, The Tragedy(悲剧:灾难:惨案) of Titu ...

  6. Javascript DOM编程艺术

    Chapter 0 为什么读这本书?作为js入门书,补基础,由于本书代码demo较简单,并没有贴代码,只记录一些自己要注意的知识点以及代码脚本 Chapter 1: javascript简史 DOM全 ...

  7. 良好的JavaScript编码风格(语法规则)

    编码风格 1.概述 "编程风格"(programming style)指的是编写代码的样式规则.不同的程序员,往往有不同的编程风格. 有人说,编译器的规范叫做"语法规则& ...

  8. Javascript 高级程序设计--总结【四】

    *******************************  Chapter 11 DOM扩展  ******************************* 主要的扩展是 选择符API 和 H ...

  9. JavaScript 的基本语法

    说明:此类博客来自以下链接,对原内容做了标注重点知识,此处仅供自己学习参考! 来源:https://wangdoc.com/javascript/basic/introduction.html 1. ...

随机推荐

  1. TensorFlow------TFRecords的读取实例

    TensorFlow------TFRecords的读取实例: import os import tensorflow as tf # 定义cifar的数据等命令行参数 FLAGS = tf.app. ...

  2. .Net Core+Angular Cli/Angular4开发环境搭建教程

    一.基础环境配置1.安装VS2017v15.3或以上版本2.安装VSCode最新版本3.安装Node.jsv6.9以上版本4.重置全局npm源,修正为淘宝的NPM镜像:npminstall-gcnpm ...

  3. string和char*的区别以及const_cast<>()

    首先,string是类,char*属于基本数据类型 其次,const_cast只能改变指针的const属性,而不能改变或者去掉本身的const属性 测试代码: // memcpyTest.cpp : ...

  4. mac软件下载

    mac软件下载 http://www.pc6.com/mac/ https://www.macx.cn/

  5. string 与BigDecimal互转

    小编知道在java中数据类型非常 的严格了,我们如果一个地方不小心就会导致应用出问题了,今天 小编就在string 转BigDecimal上碰到了一些问题,下面整理了几个例子大家一起来看看.   例子 ...

  6. Discuz常见小问题2-如何清空,删除,清除全部DIY的数据

    如果所有diy都不想要了,手动清空_common_block._common_diy_data与_common_template_block表,然后删除\data\diy\下的所有子文件夹,保证你以前 ...

  7. 倍福TwinCAT(贝福Beckhoff)常见问题(FAQ)-为什么无法打开官方范例的项目,打开tszip文件时提示尝试越过结尾怎么办

    打开新的解决方案,找到tszip文件   提示错误Advanced Setting时越过结尾   到这里一般VS会卡死   但是我们已经可以得到解压出来的文件夹,其中包含PLC的完整项目文件夹,可以新 ...

  8. C#秘密武器之特性

    一.概述 Attribute说白了就是一个类而已,里边一般含有一些附加信息,或者一些特殊的处理逻辑,以便告诉编译器应用该特性的东东是个奇葩,需要特殊对待! 二.使用时的注意事项 2.1. Attrib ...

  9. OpenERP|ODOO高德地图应用

    发布时间:2015-04-06 11:01:37来源:http://www.chinamaker.net 在openerp中的fleet模块,每一个车辆都有地图应用.默认采用的是谷歌地图,但是在应用得 ...

  10. Android 不同View ID相同

    转自:http://blog.csdn.net/program035/article/details/6905045 今天在写一段代码是,两个Activity的Button设置了相同的ID,竟然没有报 ...