Javascript-数据类型

227 阅读2分钟
  • ECMAScript中6种 简单数据类型: Underfined Null Boolean Number String Symbol
  • 复杂数据类型:Object

typeof操作符

typeof 是为确定任意变量 数据类型 而生的 例子:

let message ="any string";
console.log(typeof message);// "string"
console.log(typeof (message));// "string"
console.log(typeof 1);// "number" 

注意:特殊值null被认为是一个空对象的引用,调用typeof时返回的是"object"

undefined 和 null 类型

  • 使用var或者let 声明变量 但 未初始化 的情况下,会默认给变量赋予underfined值。所以说 声明 未声明 typeof都返回underfined
  • null表示的是一个空对象指针,所以typeof下是返回"object"

话不多说看代码

let a ;//声明 未定义
//let age   未声明
let name = null ;
let sno ;
console.log(a);// underfined
console.log(age); // 报错
console.log(typeof a) // underfined
console.log(typeof age) // underfined
consolelog(name) // object
if(a){
//不执行
}
if(!a){
//执行
}
if(sno){
//不执行
}
if(!sno){
//执行
}

Boolean

Bolean:true 和 false 两个字面值,区分大小写,不同类型之间可用Boolean()转型函数转换 在if等流控制语句中体现尤为重要

Number

NaN 表示返回数值失败 isNaN()函数判断参数是否"不是数值" Number()转型函数,可用如何数据类型 parseInt() 和 parseFloat() 主要用于将字符串转换为数值,都从位置0开始检测,不同之处parseFloat()始终忽略字符串开头的0 需得到整数可优先使用 parseInt()函数

  • 布尔值: true转为1 false转为0
  • 数值: 直接返回
  • undefined: 返回NaN
  • 字符串:都返回十进制数值 空字符串返回0 情况之外则返回NaN
  • 对象: 调用valueOf() 转换结果如果是NaN,则用toString()方法

String

  • 字符串类型:可用双引号(""),单引号(''),反引号标示,字符串长度可用 length 属性获取。要修改字符串值,要先将原始字符串销毁,用包含新值的另一个字符串保存到变量
  • 转换为字符串的方法:
  1. toString() null和undefined无该方法 传入参数还可得到不同的进制数
  2. 在不确定是否有null,undefined,可用string()方法
  3. 加号操作符给值加上个空字符串""也可转换为字符串
  • 模板字面量 模板字面量可跨行定义字符串,它会保持反引号内部的空格,还可支持字符串插值,所有差人的值都会使用toString()强制转换为字符串,插值表达式中可以调用函数和方法,可插入自己之前的值
let foo =(toString:() => 'World');
console.log(`Hello,${foo}!`);    //Hello,World!
function capitalize(word){
return `${ word [0].toUpperCase()}${word.slice(1)}`;
}
console.log(`${ capitalize('hello)},${capitalize('world')}!`);//Hello,World!

Symbol 类型较为复杂,关注我,下次再详解