JS高级程序设计学习笔记之基本包装类型
- 概述
基本类型:string、boolean、number
每当读取一个基本类型的值的时候,后台就会创建一个对应的基本包装类型的对象,从而让我们能够调用一些方法来操作这些数据。
使用new操作符创建的引用类型的实例,在执行流离开当前作用域之前都一直保存在内存中。而自动创建的基本包装类型的对象,则只存在于一行代码执行的瞬间,然后立即销毁。
对基本包装类型的实例调用typeof会返回"object",而且所有基本包装类型的对象都会被转换为布尔值true。
Object构造函数会像工厂方法一样,根据传入值的类型返回相应基本包装类型的实例。
使用new调用基本包装类型的构造函数,与直接调用同名的转型函数是不一样的。例如:
Var value = "25";
Var number = Number(value); //转型函数 var obj = new number(value);//构造函数
Alert(typeof number);// "number"; Alert(typeof obj);// "object";
- 布尔类型
布尔表达式中的所有对象都会转换为true。
Typeof操作符对基本类型返回boolean,对引用类型返回object。
Instanceof操作符测试boolean对象返回true,对基本类型的布尔值返回false。
- number类型
valueof()方法返回对象表示的基本类型的数值,toString()与toLocalString()返回字符串形式的数值。对toString()传递一个参数,告诉他返回几进制。
toFixed()方法会按照指定的小数位返回数值的字符串表示。
toExponential(),接收一个参数,以指数形式返回。
toPrecision(),接收一个参数,返回一个格式适合的值(表示小数)。
Typeof测试基本类型数值时返回number,测试number对象时返回object。
- string类型
valueof(),toString(),toLocalString(),返回对象所表示的基本字符串的值。
String类型的每一个实例都有一个length属性,表示字符串中包含多少字符。
- 字符方法:用于访问字符串中特定字符的方法。接收一个参数,基于0的字符串位置
charAt()返回单个字符。charCodeAt()返回字符的字符编码。使用方括号加数字索引来访问字符(IE7以下不支持)。
- 字符串操作方法:
Concat();
基于子字符串创建新字符串:slice(),substr(),substring()。返回被操作字符串的一个子字符串。接受一到两个参数,第一个参数指定哪里开始,第二个参数指定哪里结束
Slice()和substring()第二个参数指定子字符串最后一个字符后面的位置。Substr()第二个参数指定返回的字符个数
- 字符串位置方法:indexOf()与lastIndexOf()从一个字符串中搜索给定字符串,返回他的位置,若未找到,返回-1。接受第二个参数表示搜索开始的位置。
- Trim()方法,创建一个字符串的副本,删除前置及后缀的所有空格,然后返回结果。
- 大小写转换:toLowerCase()与toUpperCase()。
- 字符串的模式匹配方法:
Match(),接受一个参数,正则表达式或RegExp对象
Search(),参数同上,返回匹配项的索引,未找到返回-1。
Replace(),第一个参数RegExp或者字符串,第二个参数字符串或者函数
fromCharCode(),接受多个字符编码,把他们转换成一个字符串。
JS高级程序设计学习笔记之基本包装类型的更多相关文章
- JS高级程序设计学习笔记之第三章基本概念(语法,数据类型,流控制语句,函数)——查漏补缺
一.语法: 区分大小写; 2.标识符:就是指变量.函数.属性的名字,或者函数的参数 a.标志符的规则:①第一个字符必须是一个字母.下划线(_)或一个美元符号($). ...
- JS高级程序设计学习笔记——继承
我们知道,在OO语言中,继承可分为接口继承和实现继承.而ECMAScript的函数没有签名,不能实现“接口继承”,只能通过原型链实现“实现继承”. 在学习了各种继承模式之后,简单总结一下各种继承模式的 ...
- JS高级程序设计学习笔记1
javascript产生的原因: 在拨号上网时代,表单数据必须发送到服务器端才能验证输入值得有效性,JavaScript的研发就是为了解决这个问题,以便在客户端就验证输入值的有效性. ECMAScri ...
- JS高级程序设计学习笔记之RegExp类型
创建正则表达式: 字面量形式定义正则表达式: Var expression = / pattern /flags ;pattern部分可以使任意简单或复杂的正则表达式.每个正则表达式可以带有一个或多个 ...
- JS高级程序设计学习笔记之Date类型
日期对象的创建:var now =new Date(),不传递参数时,对象自动获取当前时间.(若要创建特定日期与时间的对象,必须传入该日期距离1970/1/1零点的毫秒数). Date.parse() ...
- JS高级程序设计学习笔记之数组
数组创建的方式 var str = new Array();放入数字即为设置数组长度 var str = []; 数组的length可读可写 监测数组 Array.isArray()方法确定某个值是不 ...
- JS高级程序设计学习笔记之JS事件(1)
事件流 冒泡 定义:事件开始时由最具体的元素接收,然后逐级上传到较为不具体的节点.(IE9.FF.Chrome.Safari会将事件一直冒泡到window对象.IE5.5及其以下会跳过<html ...
- 《JS高级程序设计》笔记 —— 解析查询字符串
今天在继续翻阅<JS高级程序设计>的时候,正好翻到location对象这一小节,其中有一部分就是讲的解析查询字符串.看到这个内容立马想到了做去哪儿秋招笔试题的时候有这么一道题. 去哪儿笔试 ...
- javascript高级程序设计学习笔记
javascript高级程序设计,当枕头书已经好久了~zz 现在觉得自己在js的开发上遇到了一些瓶颈,归根究底还是基础太薄弱,所以重新刷一遍js高程希望有更新的认识. 一.javascript简介 ...
随机推荐
- 跨域访问-JSONP
JSONP即JSON with Padding.由于同源策略的限制,XmlHttpRequest只允许请求当前源(域名.协议.端口)的资源.如果要进行跨域请求,我们可以通过使用 html的script ...
- handler机制和异步更新UI页面
Android 提供了Handler和Looper来满足线程之间的通行,Handler是先进先出原则,Looper类用来管理特定线程内对象之间的消息互换,也可以使用Runnable来完成页面异步更新 ...
- 127.0.0.1与localhost与ip的区别
127.0.0.1与localhost与ip的区别 May 18, 2014 localhost 不联网不使用网卡,不受防火墙和网卡限制本机访问 一般使用 本地套接字文件AF_UNIX 应用程序一般约 ...
- bootstrap-datetimepicker使用记录
版本:V2.0 1.bootstrap-datetimepicker.min.css 2.bootstrap-datetimepicker.min.js 3.bootstrap-datetimepic ...
- java中IO递归写入
package cn.stat.p1.file; import java.io.BufferedWriter; import java.io.File; import java.io.FileWrit ...
- Html5 学习之 Html5功能判断插件 Modernizr
---恢复内容开始--- Modernizr 浏览器对HTML5和CSS3开发的功能检测类库 由于当前用户使用的浏览器版本较多,对H5和CSS3的支持也各不相同.前端的开发者,在使用一些新的特性的时候 ...
- Python一路走来 线程 进程
Python线程 Threading用于提供线程相关的操作,线程是应用程序中工作的最小单元. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 #!/usr/bin/env pytho ...
- 本原串(HDU 2197 快速幂)
本原串 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submiss ...
- Reshaper 快捷键
配置单个键盘快捷键 1.在主菜单上,选择Tools | Options 2.在导航视图中选择Environment | Keyboard 3.在命令列表中,选择启动ReSharper的命令名称.浏览列 ...
- oracle 主键应用序列和触发器实现自动增长
oracle 主键自动增长 这几天搞Oracle,想让表的主键实现自动增长,查网络实现如下: create table simon_example ( id number(4) not null pr ...