基本包装类型

来源:互联网 发布:怎么制作淘宝网站 编辑:程序博客网 时间:2024/06/06 14:25

每当读取一个基本类型值时,后台会创建一个对应的基本包装类型的对象,从而可以调用一些方法来操作数据。引用类型与基本包装类型的主要区别是对象的生存期。引用类型对象在执行流离开当前作用域之前都一直保存在内存中,而基本包装类型对象只存在一行代码的执行瞬间,然后就被销毁。

typeof 基本包装类型的实例 // 返回object

Boolean(基本包装类型的对象) //返回true

使用new 基本包装类型构造函数 //返回基本包装类型的实例

直接调用与基本包装类型同名的转型函数 //返回的是基本类型的值

var value = "25";var number = Number(value);console.log(typeof number);   //numbervar obj = new Number(value);console.log(typeof obj);  //object

【Boolean】

【Number】

(三个方法都可以通过向上或向下舍入)

    ▪ 数值.toFixed(要显示的小数位数)  //将数值按照指定的小数位数格式化为字符串    ▪ 数值.toExponential(小数位数)  //返回指数表示(e表示)的字符串    ▪ 数值.toPrecision(数值所有数字的位数)  //返回最合适的格式(指数格式or一般数值格式)

【String】

String类型的每个实例都有一个length属性。

1. 字符操作方法:

▪ 字符串.charAt(字符位置) ;or 字符串[字符位置];//返回该位置的字符▪ 字符串.charCodeAt(字符位置) ;//返回该位置的字符的字符编码(与其相反的String构造函数的静态方法:String.fromCharCode(编码1,编码2…..); //返回由这些字符组成字符串)
var s1 = "red";for (var i=0;i<s1.length;i++){    console.log(s1.charCodeAt(i)); //114、101、100}console.log(String.fromCharCode(114,101,100)); // red

2. 字符串操作方法:

  1. 拼接(原字符串不会变):

     字符串.concat(‘要拼接的字符串1’,‘要拼接的字符串2’…….) ;  //返回拼接后的新字符串(Array也有这个方法)
  2. 截取(原字符串不会变):

    ▪ 字符串.slice(开始位置,结束位置);(Array也有这个方法)▪ 字符串.substr(开始位置,返回的字符个数);▪ 字符串.substring(开始位置,结束位置);该方法会将较小数作为开始位置。substr()将第一个负值与字符串长度相加,第二个负数转换为0;substring()把两个负值都转为0
  3. 查找子字符串位置

    ▪ 字符串.indexOf("子字符串",开始搜索位置)  //向后搜索 (Array也有这个方法)▪ 字符串.lastIndexOf(“子字符串”,开始搜索位置) //向前搜索(Array也有这个方法)
//找出所有e的下标var stringValue = "Lorem ipsum dolor sit amet, consectetur adipisicing elit";var pos = stringValue.indexOf('e');var posArray = new Array();while(pos>-1){    posArray.push(pos);    pos = stringValue.indexOf('e',pos+1);}console.log(posArray); //[ 3, 24, 32, 35, 52 ]

4.创建一个删去字符串前置、后置所有空格的副本(原字符串不变):

    ▪ 字符串.trim()    ▪ 字符串.trimLeft() //删去字符串前置空格    ▪ 字符串.trimRight()//删去字符串后置空格

5.大小写转换(原字符串不变)

    ▪ 字符串.toLowerCase() //小写    ▪ 字符串.toUpperCase() //大写    ▪ 字符串.toLocaleLowerCase() //针对特定地区的小写

字符串.toLocaleUpperCase()//针对特定地区的大写

var stringValue = "Lorem ipsum dolor sit amet, consectetur adipisicing elit";var s = stringValue.toUpperCase();console.log(stringValue); //Lorem ipsum dolor sit amet, consectetur adipisicing elit (原字符串不变)console.log(s); //LOREM IPSUM DOLOR SIT AMET, CONSECTETUR ADIPISICING ELIT

6.模式匹配

    ▪ 字符串.match(“正则表达式”orRegExp对象);        正则表达式orRegExp对象.exec(字符串);         //两者返回结果一样,是个数组    ▪ 字符串.search(“正则表达式“orRegExp对象);      //返回第一个匹配的索引,若未找到,则返回-1。    ▪ 字符串.replace(“正则表达式”orRegExp对象,替代的字符串or函数);    [If 第一个参数为  “正则表达式”,只会替换第一个子字符串。若要替换所以子字符串,    第一个参数要为RegExp对象,并指定全局标志g]    ▪ 字符串.split(分隔符(字符串orRegExp对象),指定数组大小(可不写)) ;      //返回一个数组,包含了被指定分隔符分割的多个子字符串
var c = "red,blue,green,yellow";var c1 = c.split(/[,]/);console.log(c1); // [ 'red', 'blue', 'green', 'yellow' ]

7.比较两个字符串

    ▪ 字符串1.localeCompare(字符串2);  //字符串1在字母表比字符串2前,返回-1;相等返回0;后返回1;
原创粉丝点击