`

3 数据类型

阅读更多

3.1 Number

8进制数不是标准的,应该避免使用。



  

3.2 String

Number --> String

var abc = 12;
undefined
abc.toString();
"12"
abc.toString(16);
"c"
String(abc);
"12"
abc + "";
"12"
var efg = 123456.789;
undefined
efg.toFixed(0);
"123457"
efg.toFixed(2);
"123456.79"
efg.toExponential(1);
"1.2e+5"
efg.toExponential(3);
"1.235e+5"
efg.toPrecision(4);
"1.235e+5"
efg.toPrecision(7);
"123456.8"

 

String --> Number

var str = "123A";
undefined
Number(str);
NaN
parseInt(str, 16);
4666
var str1 = "123.1";
undefined
str1 - 0;
123.1
Number(str1);
123.1

 

3.3 Boolan

 

Boolean --> Number  true --> 1  false --> 0

Boolean --> String     true --> "true" false --> "false"

 

Number --> Boolean  NaN, 0 --> false  others--> true

String --> Boolean    "" --> false others --> true

object --> Boolean   null --> false others --> true

 

3.4 Function

 

function squre(x) {return x * x;}

 

var squre = function(x) {return x * x;}

 

var plus= Function("x, y", "return x +y;")

 

function squre(x) { return x * x}
undefined
var abc = squre(10);
undefined
abc;
100
var plus = function(x,y){return x + y;}
undefined
var plusRst = plus(10, -9);
undefined
plusRst;
1
var plusRst = Function{"x,y", "return x+y;"};
SyntaxError: Parse error 
var plusRst = Function{"x", "return -x;"};
SyntaxError: Parse error 
var plusRst = Function("x,y", "return x + y;");
undefined
plusRst(10,-8);
2

 

3.5 Object

var point = new Object();
point.x = 10;
point.y = 20;
var rectangle = { upperLeft: { x: 2, y: 2 },
                  lowerRight: { x: 4, y: 4}
                };
var rectangle = { "upperLeft": { x: 2, y: 2 },
                  "lowerRight": { x: 4, y: 4}
                };

 

Object --> String toString()

Object --> Number valueOf()

                               toString() --> Number

 

3.6 Array

var arr = new Array();
undefined
arr[0] = 1.2;
1.2
arr[1] = "javascript";
"javascript"
arr[2] = true;
true
arr[3] = {x:1, y:3};;
Object
arr;
[1.2, "javascript", true, Object]
var arr2 = new Array(1.2, "javascript", true, {x:1, y:3});
undefined
arr2;
[1.2, "javascript", true, Object]
var arr3 = new Array(10);
undefined
arr3;
[undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined]
arr3.length;
10
var arr4 = [1.2, "javascript", true, {x:1, y:3}];
undefined
arr4;
[1.2, "javascript", true, Object]
var matrix = [[1,2,3], [4,5,6], [7,8,9]];
undefined
matrix;
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
var arr5 = [1,,,,5];
undefined
arr5;
[1, undefined, undefined, undefined, 5]

 

3.7 null

    null --> 0, "null", false

 

3.8 undefined

null == undefined;
true
null === undefined;
false

 undefined -> NaN, "undefined", false

 

3.9 Date 

var now = new Date();
undefined
"Today is: " + now.toLocaleString();
"Today is: Thursday, April 16, 2009 10:41:58"

 

3.12 Wrapper Object

var otrue = Object(true);
undefined
otrue;
true
typeof(otrue);
"object"

 

3.14 Object To Primitive

做+或者比较操作的时候,Object会先调用valueOf,转换成数字然后比较。如果不能转换成数字,就会转换成String进行比较。

var ofalse = new Boolean(false);
undefined
if (ofalse) a = 10; else a =11;
10
var arr1 = [];
undefined
arr - 0;
NaN
arr1 - 0;
0
var arr2 = [1];
undefined
arr2 - 0;
1
var arr3 = [1,2];
undefined
arr3 - 0;
NaN
var str = "3";
undefined
arr2 < str;
true
"2" < "3";
true
"2" < "3";
true
"A" < "a";
true
var str2 = "1";
undefined
arr2 < str2;
false

 

3.15 Reference or Value

 

数字,bool类型都是value的,object都是reference的。string是不可改变的,传得是reference, == 比较的是value。

3
0
分享到:
评论

相关推荐

    struts2学习笔记3数据类型转换

    struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换

    3数据类型.md

    3数据类型.md

    SQLite3中的数据类型

    在SQLite3中,数据类型的设计与许多其他数据库系统有所不同,它具有灵活性且易于理解。下面将详细介绍SQLite3中的数据类型及其特点。 1. NULL类型 SQLite3允许字段值为NULL,这意味着没有任何值。NULL并不是一种...

    C语言程序设计:Cd-3 数据类型、运算符与表达式.ppt

    C语言程序设计:Cd-3 数据类型、运算符与表达式.ppt

    高级语言程序设计c3数据类型.ppt

    高级语言程序设计 C 语言数据类型是编程语言的基础,决定了数据在内存中的存储方式和取值范围。数据类型分为基本类型、构造类型、指针类型、空类型 void 等。基本类型包括整型、字符型、数组、浮点型、枚举类型、...

    SQL SERVER的数据类型自定义

    ### SQL Server 数据类型详解与自定义数据类型创建 在数据库设计与管理中,理解并熟练掌握数据类型至关重要,因为它们直接影响到数据存储的效率、安全性和查询性能。SQL Server 提供了丰富的内置数据类型,同时也...

    Sqlite3支持的数据类型

    下面将详细介绍SQLite3支持的数据类型及其特性。 1. NULL(空值) SQLite中的NULL类型代表一个未知或未定义的值。它不同于其他类型的零值,如数字0或空字符串。NULL值在比较时与其他任何值都不相等,包括另一个NULL...

    易语言自定义数据类型变量保存

    自定义数据类型允许用户根据需求定义自己的数据结构,比如组合多个基本数据类型,形成新的复合类型。 本案例"易语言自定义数据类型变量保存"主要关注如何保存和恢复自定义数据类型的变量。在编程中,保存数据通常是...

    SQL数据库数据类型说明

    3. 近似数值型数据类型 SQL 数据库中的近似数值型数据类型包括 float 和 real。 * float 数据类型:可以存储从 -1.79E+308 到 1.79E+308 之间的浮点数。 * real 数据类型:可以存储从 -3.40E+38 到 3.40E+38 之间...

    SqlServer数据库的数据类型

    ### SqlServer数据库的数据类型详解 数据类型在编程与数据库管理中扮演着至关重要的角色,它不仅定义了数据的存储方式,还决定了数据可以执行的操作。SQL Server作为一种广泛使用的数据库管理系统,提供了丰富的...

    SQL2000数据类型

    在SQL Server 2000中,数据类型主要分为几大类别,包括整数数据类型、浮点数据类型、二进制数据类型、字符数据类型、日期和时间数据类型、以及其他特殊数据类型。 一、整数数据类型 1. INT (INTEGER):INT数据类型...

    java数据类型的转换简单数据类型之间的转换 (2). 字符串与其它数据类型的转换 (3). 其它实用数据类型转换

    一些初学JAVA的朋友可能会遇到JAVA的数据类型之间转换的苦恼,例如,整数和float,double型之间的转换,整数和String类型之间的转换,以及处理、显示时间方面的问下面笔者就开发中的一些体会介绍给大家。 我们知道,...

    易语言自定义数据类型转换1.1源码

    3:不支持自定义数据类型中嵌套自定义数据类型数组,注意,是不支持 。这东西能干嘛呢?。一般可以用来直接保存/还原自定义数据类型。也可以用来做数据发送,直接发送自定义数据类型...@qq1101672929。Tags:易语言定义...

    西门子TIA博图数据块中数据类型的定义.pdf

    在数据块中,可以定义多种不同的数据类型,这些数据类型包括基本数据类型、复杂数据类型和用户自定义数据类型。 基本数据类型是TIA博图中预定义的一些简单数据类型,如布尔型(BOOL)、整型(INT)、实型(REAL)等...

    JAVA数据类型思维导图

    本资源“JAVA数据类型思维导图”提供了一种直观的方式来理解和记忆Java中的数据类型,包括基本数据类型和引用数据类型。下面将对这两个主要的数据类型进行详细解释。 1. 基本数据类型(Primitive Data Types) - ...

    sql数据类型说明

    3. **DECIMAL/NUMERIC 数据类型** - **描述**:`DECIMAL` 和 `NUMERIC` 数据类型相同,可以提供小数所需的实际存储空间,但也有一定限制。它们可以存储从 `-10^38 - 1` 到 `10^38 - 1` 之间的数值。 - **存储**:`...

    实验7 Python组合数据类型.pdf

    Python组合数据类型是Python编程语言中用于存储多个数据值的内置数据结构。在Python中,组合数据类型包括列表(List)、元组(Tuple)和字典(Dictionary)。这三种类型各有其特点,可以存储不同类型的数据,包括...

    C++数据类型及取值范围

    3. **其他数据类型**: - `long double`:用于存储高精度的浮点数,通常为10个字节,具有大约15位有效数字,取值范围依赖于具体实现。 了解这些数据类型和它们的取值范围是编写C++程序的基础,因为它决定了变量...

    SQL数据类型和转换

    在SQL中,数据类型是用来定义和组织数据的基本结构,它们决定了数据可以存储的类型和形式。转换则是将一种数据类型转换成另一种的过程,这在处理不同系统或接口间的数据交互时非常常见。JDBC(Java Database ...

Global site tag (gtag.js) - Google Analytics