美文网首页前端之路
JS数据类型小结

JS数据类型小结

作者: 李不远 | 来源:发表于2018-08-16 20:54 被阅读0次

数值number

JavaScript 内部,所有数字都是以64位浮点数形式储存,即使整数也是如此。所以,11.0是相同的,是同一个数。

十进制:没有前导0的数值。

1
1.1
.1

二进制:有前缀0b0B的数值。

0b11    //3

八进制:有前缀0o0O的数值,或者有前导0、且只用到0-7的八个阿拉伯数字的数值

011

十六进制:有前缀0x0X的数值。

0xFF //255

科学计数法

123e3     //123000
123e-3    //0.123
-3.1E+12
.1e-23

正零和负零

JavaScript 内部实际上存在2个0:一个是+0,一个是-0,区别就是64位浮点数表示法的符号位不同。它们是等价的。

NaN

NaN是 JavaScript 的特殊值,表示“非数字”(Not a Number),主要出现在将字符串解析成数字出错的场合。NaN不等于任何值,包括它本身。

Infinity

表示无穷

字符串string

书写

'hello'
"world"
''      //空字符串
' '     //空格

转义

\:在需要转移的字符前加此符号

\0      //null(\u0000)
\b      //后退键(\u0008)
\f      //换页符(\u000C)
\n      //换行符(\u000A)
\r      //回车键(\u000D)
\t      //制表符(\u0009)
\v      //垂直制表符(\u000B)
\'      //单引号(\u0027)
\"      //双引号(\u0022)
\\      //反斜杠(\u005C)

多行字符串

var s = '123 \
456'
var s = '123'+
'456'           //推荐使用这种方法
var s = `123
456`            //ES6[中间包含回车]

布尔值boolean

逻辑的基本单位truefalse

可以转换成false的值

false
''   //空字符串
0和NaN
null
undefined

运算符Symbol

加法运算符

1+1     //2
true+true       //2
1+true      //2
'a'+'bc'        //'abc'
1+'a'           //'1a'  只有有一个字符串,执行时都会变成字符串拼接

算数运算符

  • 加法运算符x + y
  • 减法运算符x - y
  • 乘法运算符x * y
  • 除法运算符x / y
  • 指数运算符x ** y
  • 余数运算符x % y
  • 自增运算符++x 或者 x++
  • 自减运算符--x 或者 x--
  • 数值运算符+x
  • 负数值运算符-x

赋值运算符

var x = 1
var x = y
x += y      // 等同于 x = x + y
x -= y      // 等同于 x = x - y
x *= y      // 等同于 x = x * y
x /= y      // 等同于 x = x / y
x %= y      // 等同于 x = x % y
x **= y     // 等同于 x = x ** y

比较运算符

  • < 小于运算符
  • > 大于运算符
  • <= 小于或等于运算符
  • >= 大于或等于运算符
  • == 相等运算符
  • === 严格相等运算符
  • != 不相等运算符
  • !== 严格不相等运算符

布尔运算符

  • 取反运算符:!

  • 且运算符:&&

  • 或运算符:||

  • 三元运算符:?:

    条件?true:false

    与if…else具有同样表达效果。区别在于if...else是语句,没有返回值;三元条件表达式是表达式,具有返回值

位运算符

  • 二进制或运算符(or):符号为|,表示若两个二进制位都为0,则结果为0,否则为1
  • 二进制与运算符(and):符号为&,表示若两个二进制位都为1,则结果为1,否则为0。
  • 二进制否运算符(not):符号为~,表示对一个二进制位取反。
  • 异或运算符(xor):符号为^,表示若两个二进制位不相同,则结果为1,否则为0。
  • 左移运算符(left shift):符号为<<
  • 右移运算符(right shift):符号为>>
  • 带符号位的右移运算符(zero filled right shift):符号为>>>

其他

  • void运算符的作用是执行一个表达式,然后不返回任何值,或者说返回undefined

  • 逗号运算符用于对两个表达式求值,并返回后一个表达式的值。

    'a', 'b' // "b"
    
    var x = 0;
    var y = (x++, 10);
    x // 1
    y // 10
    

null

表示一个空指针对象

现在有对象,但是不想赋值

undefined

在使用var声明变量但未对其加以初始化时,这个变量的值就是undefined

变量没有值

对象object

对象其实就是一组数据和功能的集合

var person = {
    name:'jean',
    years:1991,
    living:true 
}          //1.前面的key可以是空字符串''  2.如果不加引号,必须服从标识符的书写规则

读取

可以使用括号运算符或者点运算符

person['name']      
person.name      //符合标识符的情况下

删除

delete person['name']
delete person.name

查看属性

Object.keys

var x = {
    key1:1,
    key2:2
};
Object.keys(x);     //['key1','key2']

typeof

测试返回值

typeof 1            //返回'number'
typeof 'a'          //返回'string'
typeof undefined    //返回'undefined'
typeof null         //返回'object'      bug之一
typeof function f(){} //返回'function'  bug之二

in 运算符

用于检查对象是否包含某个属性(注意,检查的是键名,不是键值),如果包含就返回true,否则返回false

for in循环

for...in循环用来遍历一个对象的全部属性。

var obj = {a: 1, b: 2, c: 3};

for (var i in obj) {
  console.log(obj[i]);
}       //1,2,3

相关文章

  • JS数据类型小结

    数值number JavaScript 内部,所有数字都是以64位浮点数形式储存,即使整数也是如此。所以,1与1....

  • JS的类型转换

    JS的数据类型: 首先, JS的数据类型分为基本数据类型和引用数据类型基本数据类型: string number ...

  • js对象数组的深拷贝方法以及其他方法

    js判断数据类型是否为对象 js判断数据类型是否为数组

  • 2022前端面试题汇总(附答案)更新中

    JS相关 1.JS中的数据类型 (1)数据类型分为基本数据类型和引用数据类型基本数据类型:number、null、...

  • js深拷贝

    在写深拷贝之前,有必要说一下js的数据类型 一.js数据类型 1.1 分类 js数据类型分为两类:原始数据类型、引...

  • js数据类型

    JS基本数据类型和引用数据类型(JS 基本数据类型和引用数据类型的区别及浅拷贝和深拷贝) 再讲 js 的基本数据类...

  • js入门知识点

    * 基础知识 * js的输出方式 * js的组成 * js的命名规范 * 数据类型 * number数据类型 * ...

  • js常见知识点

    一、 js基本数据类型和引用数据类型 js基本数据类型:Number、String、Boolean、Null、un...

  • JS数据类型判断

    js中可以通过typeof来判断基本的数据类型。 数据类型 js的数据类型分为基本数据类型和引用数据类型,基本数据...

  • JS 高频面试题汇总

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

网友评论

    本文标题:JS数据类型小结

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