/*
var box = 'Mr. Lee'; //基本类型
//alert(box);
//alert(typeof box);
alert(box.substring(2)); //对象.方法(参数),这种写法明显是引用类型的写法
//索引0开始,从第2个位置开始截取到末尾的字符串输出
//是基本类型,但又是特殊的引用类型,基本包装类型
//因为他可以调用系统内置的方法 alert('Mr. Lee'.substring(2)); //有效 var box = 'Mr. Lee'; //基本类型
box.name = 'Lee'; //给基本类型加属性
box.age = function () { //给基本类型加方法
return 100;
};
alert(box);
alert(typeof box);
alert(box.substring(2)); //有效
alert(box.name); //undefined,打印不出来
alert(box.age()); //出错 //基本类型是无法给自己创建属性和方法的
//但是,可以调用系统内置的属性和方法 var box = new String('Mr. Lee'); //引用类型,String的引用类型
box.name = 'Lee';
box.age = function () {
return 100;
};
alert(box);
alert(typeof box); //object
alert(box.substring(2)); //有效
alert(box.name); //自定义属性有效
alert(box.age()); //自定义方法有效 var box = 100;
alert(box.MAX_VALUE); //这种写法叫做属性 alert(Number.MAX_VALUE); //这种写法(类型.属性),叫做静态属性
*/ var box = 1000.784;
//alert(typeof box);
//alert(typeof box.toString()); //toString()把数值转换字符串
//alert(box.toLocaleString()); //本地化
//alert(box.toFixed(2)); //小数点保留两位,并转换字符串,四舍五入
//alert(box.toExponential()); //以指数形式,并转换字符串
alert(box.toPrecision(8)); //根据传参来决定指数或者点数

 String类型

属性:

length 返回字符串的字符长度

constructor 返回创建String 对象的函数
prototype 通过添加属性和方法扩展字符串定义

String 也包含对象的通用方法,比如valueOf()、toLocaleString()和toString()方法,但这
些方法都返回字符串的基本值。

charAt(n) 返回指定索引位置的字符
charCodeAt(n)
以Unicode 编码形式返回指定索引位置的字符

var box = 'Mr.Lee';
alert(box.charAt(1)); //r
alert(box.charCodeAt(1)); //
alert(box[1]); //r,通过数组方式截取
PS:box[1]在IE 浏览器会显示undefined,所以使用时要慎重。

字符串操作方法

concat(str1...str2) 将字符串参数串联到调用该方法的字符串
slice(n,m) 返回字符串n 到m 之间位置的字符串
substring(n,m) 同上
substr(n,m) 返回字符串n 开始的m 个字符串

var box = 'Mr.Lee';
alert(box.concat(' is ', ' Teacher ', '!')); //Mr.Lee is Teacher !
alert(box.slice(3)); //Lee
alert(box.slice(3,5)); //Le
alert(box.substring(3)); //Lee
alert(box.substring(3,5)); //Le
alert(box.substr(3)); //Lee
alert(box.substr(3,5)); //Lee
var box = 'Mr.Lee';
alert(box.slice(-3)); //Lee,6+(-3)=3 位开始
alert(box.substring(-3)); //Mr.Lee 负数返回全部
alert(box.substr(-3)); //Lee,6+(-3)=3 位开始
var box = 'Mr.Lee';
alert(box.slice(3, -1)); //Le 6+(-1)=5, (3,5)
alert(box.substring(3, -1)); //Mr. 第二参为负,直接转0,
//并且方法会把较小的数字提前,(0,3)
alert(box.substr(3, -1)); //'' 第二参数为负,直接转0 ,(3,0)

补充

//alert(box.concat(' is ', ' Teacher ', '!')); //参数字符串连接
//alert(box.slice(4, 6)); //Le
//alert(box.substring(4, 6)); //Le
//alert(box.substr(4,6)); //从第四个开始,选6个
//alert(box.substr(4,2)); //Le
//alert(box.slice(4));
//alert(box.substring(4));
//alert(box.substr(4)); //三个都是Lee //alert(box.slice(-2)); //7+(-2)=5, 第5位开始,ee
//alert(box.substring(-2)); //负数返回全部字符串,Mr. Lee
//alert(box.substr(-2)); //7+(-2)=5, 第5位开始,ee //alert(box.slice(2,-1)); //7+(-1)=6,(2,6),. Le
//alert(box.slice(-2,-1)); //7+(-2)=5, 7+(-1)=6,(5,6),e
//alert(box.substring(2,-1)); //参数如果是负,直接0,(2,0); 如果第二个参数比第一个小,那么第二个参数提前,(0,2)
//alert(box.substr(2, -1)); //第二参数为负,直接0,(2,0),空 //alert(box.substr(-2)); //IE浏览器会遇到负值会全部返回

PS:IE 的JavaScript 实现在处理向substr()方法传递负值的情况下存在问题,它会返回
原始字符串,使用时要切记。

字符串位置方法

indexOf(str, n) 从n 开始搜索的第一个str,并将搜索的索引值返回
lastIndexOf(str, n) 从n 开始搜索的最后一个str,并将搜索的索引值返回

var box = 'Mr.Lee is Lee';
alert(box.indexOf('L')); //
alert(box.indexOf('L', 5)); //
alert(box.lastIndexOf('L')); //
alert(box.lastIndexOf('L', 5)); //3,从指定的位置向前搜索
PS:如果没有找到想要的字符串,则返回-1。
示例:找出全部的L
var box = 'Mr.Lee is Lee'; //包含两个L 的字符串
var boxarr = []; //存放L 位置的数组
var pos = box.indexOf('L'); //先获取第一个L 的位置
while (pos > -1) { //如果位置大于-1,说明还存在L
boxarr.push(pos); //添加到数组
pos = box.indexOf('L', pos + 1); //从新赋值pos 目前的位置
}
alert(boxarr); //输出

大小写转换方法

toLowerCase(str) 将字符串全部转换为小写
toUpperCase(str) 将字符串全部转换为大写
toLocaleLowerCase(str) 将字符串全部转换为小写,并且本地化
toLocaleupperCase(str) 将字符串全部转换为大写,并且本地化

var box = 'Mr.Lee is Lee';
alert(box.toLowerCase()); //全部小写
alert(box.toUpperCase()); //全部大写
alert(box.toLocaleLowerCase()); //
alert(box.toLocaleUpperCase()); //
PS:只有几种语言(如土耳其语)具有地方特有的大小写本地性,一般来说,是否本
地化效果都是一致的。

字符串的模式匹配方法

match(pattern) 返回pattern 中的子串或null
replace(pattern, replacement) 用replacement 替换pattern
search(pattern) 返回字符串中pattern 开始位置
split(pattern) 返回字符串按指定pattern 拆分的数组

var box = 'Mr.Lee is Lee';
alert(box.match('L')); //找到L,返回L 否则返回null
alert(box.search('L')); //找到L 的位置,和indexOf 类型
alert(box.replace('L', 'Q')); //把L 替换成Q
alert(box.split(' ')); //以空格分割成字符串

其他方法

fromCharCode(ascii) 静态方法,输出Ascii 码对应值
localeCompare(str1,str2) 比较两个字符串,并返回相应的值

alert(String.fromCharCode(76)); //L,输出Ascii 码对应值
localeCompare(str1,str2)方法详解:比较两个字符串并返回以下值中的一个;
1.如果字符串在字母表中应该排在字符串参数之前,则返回一个负数。(多数-1)
2.如果字符串等于字符串参数,则返回0。
3.如果字符串在自附表中应该排在字符串参数之后,则返回一个正数。(多数1)
var box = 'Lee';
alert(box.localeCompare('apple')); //
alert(box.localeCompare('Lee')); //
alert(box.localeCompare('zoo')); //-1

基本包装类型:Boolean、Number 和String的更多相关文章

  1. JavaScript封装方法,兼容参数类型为Number和String

    /** * 依据Kind确定跳转到目标列表页面. * @param kind */ function gobackByKind(kind) { var kindStr = String(kind); ...

  2. 基本包装类型Boolean、Number、String特性及常用方法

    基本包装类型:Boolean.Number.String 一.String 字符串常用方法 1.indexOf()  lastIndexOf()  返回相应字符的索引号 2.slice(index1, ...

  3. javascript 之基本包装类型--04

    基本包装类型 基本包装类型是特殊的引用类型.每当读取一个基本类型值的时候,后台就会创建一个对应的基本包装类型的对象,从而可以调用属性.方法来进行后续操作. ECMAScript还提供了三种基本包装类型 ...

  4. js中基本包装类型详情

    基本包装类型 基本包装类型有Boolean,Number和string类型,每当读取一个基本类型值时,后台就会创建一个对应的基本包装类型对象. 从逻辑上,基本类型值不是对象,没有方法,但从技术上来看, ...

  5. 内置对象(Math、Date、String、Array、基本包装类型)

    一.内置对象 js中三种对象:内置对象.自定义对象.浏览器对象 实例对象是指通过构造函数创建出来,然后实例化的对象(new关键字) 静态对象是指不需要创建,直接调用的对象,可以在整个JS里调用的公共对 ...

  6. Javascript之旅——第五站:说说那些所谓的包装类型

    最近不看犀牛书了,那本翻译的特烂而且好拗口,尤其是原型那块说的乱七八糟,后来经同事介绍,买了本js高级程序设计,然后就继续 苦逼的看,不吐槽了,继续说说js中有新鲜感的包装类型. 一:String 说 ...

  7. 廖雪峰js教程笔记7 基本类型和包装类型

    在JavaScript的世界里,一切都是对象. 但是某些对象还是和其他对象不太一样.为了区分对象的类型,我们用typeof操作符获取对象的类型,它总是返回一个字符串: typeof 123; // ' ...

  8. JavaScript高级程序设计之基本包装类型

    为便于操作基本类型值,ECMAScript提供了3个特殊的引用类型:Boolean, Number 和 String // 字符串怎么会有方法呢 var str1 = "some text& ...

  9. JavaScript--基本包装类型(13)

    // JS为了便于操作基本类型,提供了3个特殊的引用类型:Boolean/Number和String; 一 基本包装类型概述 // 实际上,每当读取一个基本类型值的时候,后台就会创建一个对应的基本包装 ...

  10. JavaScript的基本包装类型概述与基本包装类型_Number类型

    JavaScript的基本包装类型示例 为了便于操作基本类型值,javaScript 提供了 3 个特殊的引用类型:Boolean.Number和 String. 这些类型与其他引用类型相似,但同时也 ...

随机推荐

  1. [地图代数]处理DEM中的高程异常值——ArcGIS栅格计算的应用

    接了一个任务,要处理DEM原始数据中的高程异常值,如图中的异常亮点. 想了一下,以前处理过建筑物附近的DEM铲平,那么高程异常值应该如何处理呢? 显然直接铲平时不太合理的,需要利用异常值周围的高程进行 ...

  2. MFC项目中包含atlimage.h导致fatal error C1189: #error : WINDOWS.H already included. MFC apps must not #include <windows.h>

    因为要用到CImage所以包含了atlimage.h 报这个错误的话你只需要把atlimage.h放在afxwin.h的下方即可,不能让它在afxwin.h的上方

  3. Virtualbox+UbuntuServer+Xshell搭建Linux开发环境

    需求背景 嵌入式开发环境以编译服务器(Linux系统)为核心, 开发人员较多使用Windows系统, 通过若干工具, 可以实现开发人员使用Windows的开发工具,编写代码,然后在Linux系统上编译 ...

  4. Radius session

    1,EAP 中继 client start, NAS require identity, client sent username, NAS sent username to sever, serve ...

  5. Spring shiro使用

    maven依赖: <dependency> <groupId>commons-collections</groupId> <artifactId>com ...

  6. windows 计算机 管理 命令

    compmgmt.msc

  7. 转:python webdriver API 之层级定位

    在实际的项目测试中,经常会有这样的需求:页面上有很多个属性基本相同的元素 ,现在需要具体定位到其中的一个.由于属性基本相当,所以在定位的时候会有些麻烦,这时候就需要用到层级定位.先定位父元素,然后再通 ...

  8. acm算法模板(3)

    位  运  算 程序中的所有数在计算机内存中都是以二进制的形式储存的.位运算说穿了,就是直接对整数在内存中的二进制位进行操作.运位算包括位逻辑运算和移位运算,位逻辑运算能够方便地设置或屏蔽内存中某个字 ...

  9. [转]easyui data-options的使用

    原文地址:easyui data-options的使用 data-options是jQuery Easyui 最近两个版本才加上的一个特殊属性.通过这个属性,我们可以对easyui组件的实例化可以完全 ...

  10. Java基础(44):ArrayList使用详解

    1.什么是ArrayList ArrayList就是传说中的动态数组,用MSDN中的说法,就是Array的复杂版本,它提供了如下一些好处:    a.动态的增加和减少元素    b.实现了IColle ...