JavaScript基本包装类型

JavaScript基本包装类型

JavaScript引用类型主要包含基本包装类型、Array类型、Object类型、Date类型、regExp类型等,本文主要介绍基本包装类型及其常用方法。

基本包装类型

JS基本包装类型主要包含三种:Boolean、Number和String类型

  • String类型

    String类型的变量需要通过String()构造函数来创建,通过new操作符初始化一个String类型的实例并传入相关的参数,当直接调用String()方法时,它将会创建一个基本类型的字符串

    let str1 = new String('string1');
    typeof str1;        // Object
    str1 instanceof String;       // true
    let str2 = String('string2');
    typeof str2;        // 'string'
    

    无论通过构造函数或者赋值表达式创建一个字符串,它都会继承String.property中的一些方法:

    charAt():返回当前字符串索引位置的字符,如果传入的索引不在字符串长度范围内,则返回空字符串。

    charCodeAt():返回当前索引位置的字符串的字符编码。

    string.fromCharCode():将字符编码转换成对应的字符串,可以传入多个编码。

    indexOf():返回某个值第一次出现时的索引值,如果没找到,则返回-1;接收的第二个参数表示查找的起始位置。

    lastIndexOf():从后往前查找对应字符串的索引值,没找到返回-1;第二个参数表示查找的起始位置,如果值大于字符串的长度,则从最后一个字符开始查找。

    slice():根据参数的起始位置截取并创建一个新的字符串,如果参数有负值,则将其与字符串的长度相加;如果第二个参数大于等于第一个参数,返回空字符串。

    substr():第一个参数表示起始位置,第二个参数表示截取的长度,如果参数有负值,第一个参数加上字符串的长度,如果第二个参数为负值或0则返回空字符串。

    substring():两个参数表示起始位置,如果有负值,则将所有有负值的参数转为0。

    split():表示将字符串转换成数组,第一个参数表示按照指定的分隔符进行分割,如果字符串首尾是指定的分隔符,会分割成空字符串,第二个参数表示返回的数组长度。

    concat():将字符串进行拼接,返回一个新的字符串不改变原字符串。

    toLowerCase()toUpperCase():将字符串转化成对应的小写或大写字符,返回一个新的字符串不改变原字符串。

    replace():根据参数(正则表达式)替换匹配的字符串,返回一个新的字符串。

    trim()、ESNext新增:trimStart()trimEnd():返回新字符串去掉字符串前后的空格。

    ES8新增padStart()padEnd():根据参数对字符串进行填充,如果长度大于字符串length,添加空格,返回新的字符串。

    ES7新增repeat():参数表示重复字符串的个数,返回新的字符串

    let str = 'hello world';
    str.charAt(3);                // 'l'
    str.charAt(20);               // ''
    let str4 = str.charCodeAt(4);            // 111
    string.fromCharCode(str4);    // 'o'
    str.indexOf(l);               // 2
    str.slice(2, 5);              // 'llo'
    str.slice(-2, -5);            // ''
    str.slice(-5, -2);            // 相当于str.slice(6, 9) == 'wor'
    str.split();                  // ["hello world"]
    str.split('');                // ["h","e","l","l","o"," ","w","o","r","l","d"]
    str.toLowerCase();            // "HELLO WORLD"
    str.replace(/llo/, 'i');      // "hei world"
    str.padStart(14);             // "   hello world" 三个空格
    str.repeat(3);                // "hello worldhello worldhello world"
    
  • Number类型

    与String类型类似,通过new操作符创建的是Number对象,直接调用Number()方法返回的是基本的Number类型。Number类型常用的方法有:

    toString():返回数字的字符串值,可以传入一个参数表示返回的进制数字符串格式。

    valueOf():返回对象表示的基本类型的数值。

    toFixed():按照指定的小数位返回数值的字符串表示。

    var num = 23;
    num.toString();     // "23"
    num.toSting(16);    // "17"
    var num1 = new Number(100);
    num1.valueOf();     // 100
    var num2 = 123.2345;
    num2.toFixed(3);    // "123.234" --- Chrome浏览器
    
  • Boolean类型

    Boolean()构造函数返回的是一个对象,不能直接用于逻辑判断。

    let bools = new Boolean(true);
    console.log(bools);        // Boolean(true)
    typeOf bools;              // "Object"
    

    生活的理想,就是为了理想的生活

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值