zoukankan      html  css  js  c++  java
  • js-ECMAScript-2:数据类型:string,number,Boolean,null,undefined

    ###

    数据类型总结:

    一共有6中数据类型,

    string,字符串,

    number,数字,

    Boolean,布尔,

    null,空值

    undefined,未定义,

    object,对象,

    前5种,是基本数据类型,

    object,是引用数据类型,

    ###

    数字类型

    //数字类型
    // js中,所有的数字都是数字类型,包括整数,小数, var n1 = 18; var n2 = 18.1; var n3 = 1.8e5;
    还有一种NaN,这个是一个特殊的数字,表示不是一个数字,not a number,但是这个类型还是number,

    #####

    字符串类型

    //字符串类型
    var s1 = "123";
    var s2 = "234";
    var s3 = s1+s2; // 字符串拼接
    console.log(s3)

    var s4 = "jintianhen"hao" " ---可以使用反斜杠,作为转移, 这是回车, 是一个tab符号,\这两个斜杠,就是转移之后获得一个,
    var s5 = "jintianhen'hao'" ----可以使用双引号里面,可以使用单引号,
    /* 字符串常用方法: .length 返回长度 .trim() 移除空白 .trimLeft() 移除左边的空白 .trimRight() 移除右边的空白 .charAt(n) 返回第n个字符 .concat(value, ...) 拼接,eg: concat(1) 在后面拼接1,concat(1,2,3) 在后面拼接1,2,3 .indexOf(substring, start) 子序列位置,返回的是子字符串的起始位置, .toLowerCase() 小写 .toUpperCase() 大写 .split(delimiter, limit) 分割,第一个参数是根据什么分割,第二个参数是限制分割多少个,第二个参数可以不写 ######################### .substring(from, to) 根据索引获取子序列 .slice(start, end) 切片 //substring和slice有什么相同之处: 两者的相同点: 如果start等于end,返回空字符串 如果stop参数省略,则取到字符串末 如果某个参数超过string的长度,这个参数会被替换为string的长度 substirng()的特点: 如果 start > stop ,start和stop将被交换 如果参数是负数或者不是数字,将会被0替换 silce()的特点: 如果 start > stop 不会交换两者 如果start小于0,则切割从字符串末尾往前数的第abs(start)个的字符开始(包括该位置的字符) 如果stop小于0,则切割在从字符串末尾往前数的第abs(stop)个字符结束(不包含该位置字符) * */

    ###

    布尔类型

    /*
    布尔类型
    区别于Python,true和false都是小写。
    ""(空字符串)、0、null、undefined、NaN都是false。
    * */
    //布尔类型
    var a = true;
    var b = false;

    ###

    null和undefined

    null表示值是空,一般在需要指定或清空一个变量时才会使用,如 var name=null;
    typeof name 是返回一个object,对象,
    undefined表示当声明一个变量但没有赋值的时候,该变量的默认值是undefined。还有就是函数无明确的返回值时,返回的也是undefined。
    typeof name 是返回一个undefined,

    null表示变量的值是空,undefined则表示只声明了变量,但还没有赋值。

    ###

    对象类型单独去说,

    ###

    typeof 检查数据类型

    typeof a1 //这是查看数据的类型,记住数组和null,返回的是object类型
    typeof是一个一元运算符(就像++,--,!,- 等一元运算符),不是一个函数,也不是一个语句。
    
    typeof "abc"  // "string"
    typeof null  // "object"
    typeof true  // "boolean"
    typeof 123 // "number"

    ###

    强制类型转换

    转换成string,number,Boolean,

    数字转换成字符串:
    var a =123
    方式一:
    a = a.toString();
    这样就可以把a转换成字符串了,
    注意null和undefined,是没有toString()方法的,调用这个方法会报错,
    方法二:
    调用string函数,
    a = string(a)
    注意null和undefined,也可以使用这个string函数的,

    ###

    强制类型转换,转换为number
    var a = "123"
    方法一,
    a = Number(a)
    使用的Number函数,
    注意,
    1,如果不是一个纯数字,比如字母,或者数字字母混合,就会返回一个NaN,必须正常的数字才可以转换成为数字,非数字不行,
    2,如果是一个空,或者空格,都是转换成为0,
    3,布尔类型,true转换成1,FALSE,转为0,
    4,null,转换为0,
    5,undefined,转换为NaN,

    方法二,
    var a = "123px"
    var b = "123.4566px" ---这个转换就是123,因为遇到点,后面的都不要了,
    a = parseInt(a)
    这种就是转为了123,也就是可以取出来有效的整数,但是是从左开始取,遇到非数字都不要了,
    b = parseFloat(b) ----123.4566
    注意,
    1,如果对于非string的,比如,布尔,需要先转换为字符串,然后再使用这两个方法,

    ###

    转换为布尔
    只有一个方式就是使用Boolean函数,
    var a = 123
    a = Boolean(a)
    --这个是true,如果是0,就是FALSE,如果null,也是FALSE,

    var a = "qeqwe"
    a = Boolean(a)
    字符串转布尔,除了空串,都是true,空串是FALSE,

    null和undefined,都是转为FALSE,
    对象也会转为true,

    ###

    ###

  • 相关阅读:
    位运算操作
    C 动态分配内存
    数据查询语言 DQL
    数据操纵语言 ,DML, 增删改
    Convert Sorted List to Binary Search Tree
    Longest Consecutive Sequence
    Binary Tree Postorder Traversal
    Triangle
    4Sum
    3Sum Closest
  • 原文地址:https://www.cnblogs.com/andy0816/p/15136822.html
Copyright © 2011-2022 走看看