zoukankan      html  css  js  c++  java
  • 数据类型概述

    原文地址:https://wangdoc.com/javascript/

    简介

    JavaScript的数据类型共有6种。(ES6又新增了第7种Symbol类型的值)

    • 数值(number):整数和小数。
    • 字符串(string):字符串 。
    • 布尔值(boolean):表示真伪的两个特殊值。
    • undefined:表示未定义或不存在。
    • null:表示空值。
    • 对象(object):各种值组成的集合。
      通常,数值、字符串、布尔值这三个类型合称为原始类型(primitive type)的值,即它们是最基本的数据类型,不能再细分了。对象则称为合成类型(complex type)的值。至于undefinednull,一般将它们看成两个特殊值。
      对象时最复杂的数据类型,又可以分为三个子类型。
    • 侠义的对象(object)
    • 数组(array)
    • 函数(function)
      函数其实是处理数据的方法,JavaScript把它当成一种数据类型,可以赋值给变量,这为编程带来了很大的灵活性。

    typeof运算符

    JavaScript有三种方法,可以确定一个值到底是什么类型。

    • typeof运算符
    • instanceof运算符
    • Object.prototype.toString方法
      typeof可以返回一个值得数据类型,数值、字符串、布尔值分别返回number、string、boolean
    typeof 123 // number
    typeof "123" // string
    typeof false // boolean
    

    函数返回function

    function f() {}
    typeof f; // function
    

    undefined返回undefined
    对象返回object。

    typeof window // object
    typeof {} // object
    typeof [] // object
    

    在JavaScript内部,数组是一种特殊的对象。这里顺便提一下,instanceof运算符可以区分数组和对象。

    var o = {};
    var a = [];
    o instanceof Array // false
    a instanceof Array // true
    

    null返回object
    这个是历史原因造成的。1995年的JavaScript语言第一版,没考虑null,只把它当成object的一种特殊值。后来null独立出来称为单独的数据类型,但是为了兼容旧代码,typeof null返回object就无法改变了。

  • 相关阅读:
    启动matlab时总是直接跳转到安装界面的解决方案
    毕业倒计时
    PARAMETER和ARGUMENT的区别
    在Windows上使用Ubuntu共享的打印机
    Ubuntu 16.04 + CUDA 8.0 + cuDNN v5.1 + TensorFlow(GPU support)安装配置详解
    深度学习硬件购买指南
    GeForce GTX 1080 ti安装记录
    What is a TensorFlow Session?
    来来来,干了这碗毒鸡汤……
    [译] 理解 LSTM(Long Short-Term Memory, LSTM) 网络
  • 原文地址:https://www.cnblogs.com/chris-jichen/p/9923776.html
Copyright © 2011-2022 走看看