JS的数据类型简要
刚刚开始学习JS,这是在网上自学JS时写的一份JS学习笔记,本节内容只是对JS中的几个数据类型进行简要描述
JavaScript 数据类型
- 字符串(String)
- 数字(Number)
- 布尔(Boolean)
- 数组(Array)
- 对象(Object)
- 空(Null)
- 未定义(Undefined)
JS拥有动态类型
JavaScript 拥有动态类型。这意味着相同的变量在不同的情景下可能会变成不同的类型
var x; // x 为 undefined
var x = 5; // 现在 x 为数字
var x = "John"; // 现在 x 为字符串
JavaScript 的字符串
JavaScript中的字符串可以使用单引号(’’)或者双引号("") ,
还可以使用反引号(``) 结合 ${ } 来表示格式化字符串(类似C#中格式化字符串)
//使用‘’ 和“”来表示字符串
let str1 = "this is a string"
let str2= ' this is a string'
//格式化字符串 将在字符串格式化记录a的值
let a = 10;
let str3 = `a is ${a}`
//使用格式化字符串可以直接在字符串中内嵌js代码使用变量a
let b = 9;
let str4 = `a + b = ${a + b}` ;
可以在控制台上看到输出结果:
JavaScript的数字类型
JavaScript 对于数字只提供了一种类型,数字可以表示整数,也可以表示浮点数
let x1 = 32.12 ;
let x2 = 32 ;
JavaScript 布尔类型
只有两个值 true 和 false
隐式转换
基本上所有js 对象都可以转换为boolean 类型
数据类型 | true | false |
---|---|---|
string | 非空字符串 | 空字符窜 |
Number | 非零的数值 | 0,NaN |
Array | 数组不参与比较时 | 参与比较的空数组 |
object | 所有对象 | |
undefine | 无 | undefine |
null | 无 | null |
NaN | 无 | null |
显式转换
使用!!转换为boolean类型
let str = '';
console.log(!!str); //false
let num = 0;
console.log(!!num); //false
let n = null;
console.log(!!n); //false
let d = new Date("2020-2-22 10:33");
console.log(!!d); //true
JavaScript 数组
怎么创建数组
准确来说JS中的数组可以理解为对象类型
创建数组的方式有以下几种:
//通过New实现定义一个空数组,通过索引初始化
let arr = new Array();
arr[0] = 5201314;
arr[1] = "str";
//通过new 创建一个长度为20的数组
let arr1 = new Array(10);
//初始化数组的方式创建一个数组
let arr2 = new Array(5201314,"str",true,false,undefined,NaN);
//也可以省略New直接初始化
let arr3 = [5201314,"str",true,false,undefined,NaN];
访问数组
通过指定数组名以及索引号码,你可以访问某个特定的元素。
let arr = new Array();
arr[0] = 5201314;
JS数组允许存入不同类型的值
下面的例子可以展示js数组可以存入不同值类型的值
let arr3 = [5201314,"str",true,false,undefined,NaN];
JavaScript 对象
JavaScript 的对象花括号表示
var John =
{
fristname : "John",
lastname : "Doe",
id = 1234
};
JavaScript Null
Null类型是只有一个值的数据类型,这个特殊的值是null,从逻辑角度来看,null值表示一个空对象指针,而这也正是使用typeof操作符检测null值会返回“object”的原因。
Null的具体信息可以参考JS中六种数据类型——Null
JavaScript Undefined
undefined值是派生自null值的,因此ECMA-262规定对他们的相等测试要返回true