美文网首页
详解Js中的数据类型(一)

详解Js中的数据类型(一)

作者: Rainism_140d | 来源:发表于2018-08-11 14:33 被阅读11次

整个Js可以简单理解为二个部分,数据部分,操作运算部分。

Js中数据类型分为:原始的数据类型   (由简单数据类型组成的)复杂数据类型;

原始数据类型:string(字符串) number(数值)  null(空值)  undefined(未定义或不存在)  boolean(布尔值)  symbol (es6);

复杂数据类型:object(对象)  简单说就是一组“键值对”的集合,一种无序的复合数据集合;

Js中判断数据类型的三种方法

typeof () 能分辨出7种数据类型,多用于简单数据类型的检验注:null与object为Object,函数为function,array为object ;

instanceof  () 数组 [ ],对象{ }用tyepof判断结果都是对象,instanceof 用于区分出数组与对象 ;

Object.prototype.toString ();调用Object的原型中的toString方法判断;


String 字符串

1、字符串可以用单引号和双引号表示(‘sky’或“sky”),如果引号中还要使用相同的引号,那么就要用转义符号(/)。

2、转义字符用来表示那些用一般字符不便于表示的控制代码

\0 :null(\u0000)

\b :后退键(\u0008)

\f :换页符(\u000C)

\n :换行符(\u000A)

\r :回车键(\u000D)

\t :制表符(\u0009)

\v :垂直制表符(\u000B)

\' :单引号(\u0027)

\" :双引号(\u0022)

\\ :反斜杠(\u005C)

3、字符串默认只能写在一行,如果多行转义即可,转义就是在需要在引号前放置 /;

在单行最后面添加 + 号与转义符号效果一样 ,var longString = 'Long '  + 'long '  + 'long '  + 'string';

es6中转义(在字符串开始前添加大键盘上1左边的的按键 ` )

es6转义

4、字符串可以视为字符数组,hello[1] 返回得是e,且不能修改。

5、String.length具有只读属性,不可修改。

6、base64转码

bota() 任意值转为Base64

atob()Base64编码转为原来的值


Number 数值

1、整数与浮点数,js中数值都是以64位浮点数形式存储。

2、NaN非数字,作用:字符串解析数字出现错误的场合 ,0/0为结果为NaN,NaN不等于任何值(包括其本身),且NaN属于number;

3.、正负0都相同

4 、lnfinity 无穷,这个数值有正负值,且相等,按照字面理解即可;

5、进制的展现

二进制:前缀 0b

八进制:前缀 0o00

十六进制:前缀0x0X

十进制: 无前缀

6、与数值相关全局方法

parselnt(参数)将字符串转为整数

参数不是字符串就先转成字符串再转数值

转换中碰到非数字后停止转换,返回转换好的

转换中碰到第一个就是字母,直接返回NaN

可以进行进制之间的转换

parseFloat()将字符串转为浮点数

参数不是字符串就先转成字符串再转数值

转换中碰到非数字后停止转换,返回转换好的

转换中碰到第一个就是字母,直接返回NaN;

isNaN()isNaN方法可以用来判断是否是NaN

判断NaN最好的方法,是利用NaN不等于NaN的性质;

isFinite( ) 返回一个布尔值,判断是否是正常的数值

正负无穷,NaN,undefined 都是false,其他都是true;


Object 对象

1、对象,简单说就是一组“键值对”的集合,一种无序的复合数据集合

2、对象的所有的键名都是字符串,没有引号或者数字都会转为字符串

3、键名不能以数字开头,如一定要那么就用引号包裹,否则报错

4、对象属性之间用逗号分隔,最后可以不加

5、可以先声明对象,然后再声明属性,不用同时创建

6、复杂类型的引用,是在内存中共用目标数据,修改目标数据中的内容,其他引用随即也被修改

7、原始类型的引用,各自在内存中开辟空间,各用各的

8、对象声明后不想给值,那么就赋值为null

9、非对象直接声明就好浏览器自动赋值 undefined

10、首行大括号,一律解释为语句

11、属性的读取三种, . 点;['key']; [表达式]

12、属性的赋值,点 .  和 [ ] 都行

13、查看一个自定义对象的所有属性,Object.keys(自定义变量名XXX)

14、delete删除对象的属性  delete 自定义对象.属性,无法删除继承属性


15、检查属性是否存在,属性 in 对象名无法分辨是否是继承的

16、属性遍历  for...in循环,会跳过不能遍历的属性,继承属性也会遍历

17、with 语句  

with(对象名){

  操作对象的属性 (可多个)

1、由于语句的作用域是当前作用域,如果语句中没有该key值,便会创建全局变量

2、从代码块来说,因为作用域是当前的作用域,语句中的key值可能是某个全局变量或者对象的属性,编译器无法预先编译,影响编译性能

优化方式

相关文章

  • Js对象

    JavaScript中的五种基本数据类型详解JavaScript中基本数据类型和包装类型 说“JS中一切皆对象”也...

  • 详解Js中的数据类型(一)

    整个Js可以简单理解为二个部分,数据部分,操作运算部分。 Js中数据类型分为:原始的数据类型 (由简单数据类型组成...

  • Python数据类型详解02

    原文博客地址: Python数据类型详解02 上文Python数据类型详解01中主要介绍了Python中的一些常用...

  • Python数据类型详解03

    原文博客地址: Python数据类型详解03 第一篇Python数据类型详解01中主要介绍了Python中的一些常...

  • JS 里的数据类型转换

    一.JS中的数据类型 js中的数据类型可以分为七种:string 、number、boolean、symbol、 ...

  • JS中的数据类型和转换

    一、JS中的数据类型 js中的数据类型可以分为五种:number 、string 、boolean、 underf...

  • JS 高频面试题汇总

    # 说一下JS 中的数据类型有哪些 JS 数据类型包括 基本 / 引用 / 特殊 数据类型: 基本数据类型:Str...

  • js中的数据类型及转换

    Js中的数据类型 Js中的数据类型一共有六种,即number,string,boolean,underfine,n...

  • 原型、原型链及构造函数详解

    本文主要对JS中的object和function这两种数据类型的基础上对原型原型链及构造函数做一个详解。 构造函数...

  • js基础(一)

    1-js中的数据类型 js中的原始数据类型有6中,其中基本数据类型有4种(string、number、boolea...

网友评论

      本文标题:详解Js中的数据类型(一)

      本文链接:https://www.haomeiwen.com/subject/yrzrbftx.html