JS数据类型

一、JS中的数据类型有7种

1.数字 number

2.字符串 string

3.布尔 bool

4.符号 symbol

5.空 undefined

6.空 null

7.对象 object


1.数字 number 

写法

整数写法:1

小数写法:0.1

科学计数法:1.23e4

八进制写法(用得少):0123或00123或0o123

十六进制写法:0x3F或0X3F

二进制写法:0b11或0B11 

特殊值

正0和负0:都等于0,要严谨

无穷大:Infinity、+Infinity、-Infinity

无法表示的数字:NaN(Not a Number),但它是一个数字:isNaN()可以判断一个数是否为NaN,是返回false,不是返回true


2.字符串 string  每个字符两个字节(阉割版的utf-8)


写法

单引号:'你好'

双引号:'你好'

反引号:`你好` 

注意:引号不属于字符串的一部分,就像书名号不属于书名的一部分一样

这里我们来看下转义,也就是用另一种方法表达你想要写的东西

\ '表示'

\ "表示"

\n 表示换行

\r 表示回车

\t 表示tab制表符

\\ 表示 \

\uFFFF 表示对应的Unicode字符

\xFF 表示前256个Unicode字符

错误写法

'it's ok'

JS引擎会认为'it'就结束了,后面的看不懂

正确写法

'it\'s' ok'  // 这就是转义

"it's ok"

`it's ok`

多行字符串(如果想在字符串里回车,用反引号很容易做到)

let s = `这里是

可以的

用反引号很容易做到`

字符串的长度

String.length

'123'.length // 3

'\n\r\t'.length // 3

''.length // 0

' '.length // 1

通过下标读取字符

String[index]

let s = 'hello',

s[0] // 'h'

注意index从0开始

s[0] 是第一个字符

注意index到length

let s = 'hello'

s[5] // undefined, 居然不报错

s[4] // '0'

base64转码(一般用来隐藏招聘启事里的简历)

windows.btoa

正常字符串转为Base64编码的字符串

windows.atob

Base64编码的字符串 转为原来的字符串

3.布尔 bool

只有两个值 true或false,注意大小写,

下列运算符会得到bool值

否定运算:

!value

相等运算:

1===2、1!=2、3===4、3!=4

比较运算:

1>2、1>=2、3<4、3<=4

if 配bool

if语句常常需要判断真假

if(value){...}else{...}

五个falsy值

falsy就是相当于false但又不是false的值

分别是:undefined、null、0、NaN、''

4.符号 symbol

不怎么常用的数据类型

5.空 undefined & 6.空 null

区别

-没有本质区别

-细节一:如果一个变量声明了,但是没有赋值,那么默认值就是undefined,而不是null

-细节二:如果一个函数,没有写return,那么默认return undefined,而不是null

-细节三:前端程序员习惯上,把非对象的空值写成undefined,把对象的空值写成null,但这仅仅是习惯上的

--------------------------------------------------------------------------------------------

判断数据的类型 typeof

var num = 10; console.log(typeof num); // number

var str = 'william'; console.log(typeof str); // string

var william = true; console.log(typeof william); // boolean

var a = undefined; console.log(typeof a); // undefined

var b = null; console.log(typeof b); // object

--------------------------------------------------------------------------------------------

7.对象 object

见JS对象博客

https://www.jianshu.com/p/aff130d82bb0

二、类型转换

number=>string

String(n)

n+'' (更简单)

string=>number

Number(s)

parseInt(s) // 取整数

parseFloat(s) // 可以是小数

s-0 

+s 

x=>bool // 把任何一个东西变为布尔

Boolean(x)

!!x (更简单)

x=>string

String(x)

x.toString()

如:(1).toString

三、变量声明

三种声明方式

var a = 1

let a = 1

const a = 1

a = 1

区别

var是过时的,不好用的方式

let是新的,更合理的方式

const是声明书必须赋值,且不能再改的方式

最后这种方式是错的,不准这样声明

var声明

直接跳过,写代码不用

let声明

规则

遵循块作用域,即使用范围不能超出{}

不能重复声明

可以赋值,也可以不赋值

必须先声明再使用,否则报错

全局声明的let变量,不会变成windows属性

for循环配合let有奇效

const声明

规则

跟let几乎一样

只有一条不一样:声明时就要赋值,赋值后不能改

变量声明

指定值:var a = 1

同时也指定了类型:var a = 1

但是值和类型都可以随意变化:a = 2  /  a = '字符串'

name和'name'的区别

name是变量,值可以变,可以是'name',也可以是'hello'

'name'是字符串常量,常量就是不变量,'name'只能是'name',不能是其他值

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,386评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,142评论 3 394
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,704评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,702评论 1 294
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,716评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,573评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,314评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,230评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,680评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,873评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,991评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,706评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,329评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,910评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,038评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,158评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,941评论 2 355