zoukankan      html  css  js  c++  java
  • 3.JavaScript的数字,字符串和布尔值以及null和undefined

    计算机程序的运行需要对值进行操作,能够表示并操作的值的类型叫做数据类型(type),能支持多种数据类型是编程语言最基本的特性.变量(variable)是一个值的符号名称,可以通过名称来获得值的引用

    JavaScript的数据类型分为两类:

    • 原始类型: 数字、字符串和布尔值

    • 对象类型: 对象(object)是属性(property)的集合,每个属性都由键值对组成

    此外还有两个特殊的原始值: nullundefined,它们代表了各自特殊类型的唯一成员

    还有两个特殊的对象: 数组(表示带编号的值的有序集合),函数(具有与它相关联的可执行代码的对象,通过调用函数来执行代码)

    如果函数用new来新建一个对象,那我们称之为构造函数.每个构造函数定义了一类(class)对象--由构造函数初始化的对象组成的集合,而类除了函数类(Function)和数组类(Array)外,还有日期类(Date)、正则类(RegExp)和错误类(Error).

    JavaScript同样可分为可变类型不可变类型,可变类型是可以修改的,对象和数组属于可变类型,数字,布尔值,null和undefined属于不可变类型

    数字

    与其他编程语言不同的是,JavaScript不分整数值和浮点值,JavaScript中的所有数字均用浮点值表示

    JavaScript程序是使用语言本身提供的算术运算符来进行数字运算,包括加法运算符+,剑法运算符-,乘法运算符*,除法运算符/,和求余运算符%

    除了基本运算,JavaScript还通过Math对象的属性定义的函数来实现更加复杂的操作

    Math.pow(2,53)  //2的53次幂
    Math.round(.6)  //四舍五入  1
    Math.ceil(.6)   //向上求整  1.0
    Math.floor(.6)  //向下求整  0.0
    Math.abs(-5)  //求绝对值  5
    Math.max(x,y,z)  //取最大值  
    Math.min(x,y,z)  //取最小值
    Math.random()  //0到1.0的随机数
    Math.PI  //Π
    Math.E  //e
    Math.sqrt(3)  //3的平方根
    Math.pow(3,1/3)  //3的立方根
    Math.sin(0)   //三角函数
    Math.log(10)  //10的自然对数
    Math.log(100)/Math.LN10  //以10为底100的对数
    Math.log(512)/Math.LN2  //以2为底512的对数
    Math.exp(3)  //e的三次幂
    

    此外,JavaScript的算术运算在溢出,下溢,或被零整除不会报错

    溢出的表示结果超过了数字上限,结果为无穷大(infinity),下溢是当结果无限接近零且比JavaScript能表示的最小值还小,结果为0

    当JavaScript使用实数时,通常只是真实值的一个近似表示,因为JavaScript采用的时IEEE-754浮点表示法,能精确表示分数,但却不能表示0.1这样的数字如0.2-0.1=0.099999999998

    数字直接量

    当一个数字直接出现在JavaScript程序中,我们称之为数字直接量

    数字直接量分为:

    • 整数型直接量
    • 浮点型直接量(6.02e23 // 6.02*10^23)

    文本

    字符串(string)是一组由16位值组成的不可变的有序序列,每个字符来自unicode字符集

    字符串的使用

    在JavaScript中的字符串直接量,通常由单引号或者双引号括起来,单可以包双,双也可以包单,换行用 或者每行后面加

    JavaScript的内置功能之一就是字符串连接,用加号将两个字符串连接,获取字符串的长度则用str.length

    除了length属性,还有很多可调用的方法

    var s = 'hello,world'
    s.charAt(0)  //第一个字符
    s.charAt(s.lenght - 1)  //获取最后一个字符
    s.substring(1,4)  //获取第2到4个字符
    s.slice(1,4)   /同上
    s.slice(-3)  //最后三个字符
    s.indexOf('1')  //1首次出现的位置
    s.lastIndexOf('1')  //1最后出现的位置
    s.indexOf('1',3)  //在位置3后首次出现1的位置
    s.split(',')   //分割成字符串
    s.replace('h','H')   //将h替换成H
    s.toUpperCase()    //全部变成大写
    

    字符串都是固定不变的,使用各种方法返回的是新字符串,原字符串没有改变

    布尔值

    布尔值指代真或假,开或关,是或否.这个类型只有两个值,保留字true和false

    if(a==4)
    b = b + 1
    else
    a = a + 1
    //当a=4时 b加一,否则a加一
    

    任意JavaScript的值都可以换成布尔值,

    如 undefined,null,0,-0,'//空字符串',NaN都会转换成false,其他的全部转换成true

    此外还有&&,||和!三个运算符,这里不做赘述

    null和undefined

    null是JavaScript的关键字,它表示一个特殊值,常用来描述空值.对null进行typeof运算返回字符串'object',说明null可以认为是一个特殊的对象,含义是非对象.

    undefined也表示值的空缺,用未定义的值来表示更深层次的空值,表面变量没有初始化,如果查询属性返回undefined,则说明这个属性或元素不存在,如果函数没有返回任何值,也返回undefined

    且 undefined == null 是为true的,undefined === null则为false

  • 相关阅读:
    DHCP三种配置
    Linux-9引导过程与服务控制
    Linux系统管理10-进程和计划任务管理
    Linux系统管理11-系统安全及应用
    Linux系统管理12-Linux文件系统与日志
    ---01--Lin网络基础设置
    服务器RAID及磁盘配额的配置
    Linux常见故障及修复方法
    作业5
    104 权限 sudo 解压缩
  • 原文地址:https://www.cnblogs.com/dwfeng/p/13724964.html
Copyright © 2011-2022 走看看