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简介 ...
随机推荐
- Sass变量、嵌套
声明变量定义变量的语法Sass 的变量包括三个部分: 声明变量的符号“$” 变量名称 赋予变量的值简单的示例,假设你的按钮颜色可以给其声明几个变量: $brand-primary : darken(# ...
- 页面传值中get和post区别
get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应. post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到 ...
- 概率dp小结
好久之前学过,记得是一次亚洲区的前几天看了看概率dp,然后亚洲区就出了一道概率dp,当时虽然做上了,但是感觉有很多地方没懂,今天起早温习了一下,觉得很多地方茅塞顿开,果然学习的话早上效果最好了. 首先 ...
- 转载:对#!/bin/sh的认识
转载网址:http://blog.163.com/hashes@yeah/blog/static/16867631220101029847420/ 对#!/bin/sh的认识 第一次学shell编程, ...
- DNS预获取(dns-prefetch)
今天翻看twitter的源码的时候看到了一下内容: <link rel=”dns-prefetch” href=”http://a0.twimg.com”/> <link rel=” ...
- php 函数strtr 替换函数实例解析 strtr 速度比较快
先来看看这个php字符串替换函数 PHP字符串替换函数strtr()的两种状态 strtr(string,from,to) 或者strtr(string,array) 首先针对PHP字符串替换函数st ...
- Python新手学习基础之运算符——位运算
位运算符 位运算实际上是把数字看作二进制来进行计算,它的运算法则如下: 结合实例,来看下位运算是如何进行的吧: 位运算在实际应用中用途很广泛,比如我们经常听到的子网掩码,它其实就是和IP地址做了按位与 ...
- 关于python27 中文编码
本博文已移致独立博客:www.pubwin2009.net 传送门:http://www.pubwin2009.net/index.php/pubwin/42.html 看了网上好多的资料,以前一直不 ...
- IIC 概述之源码仿真
7.1.1 I2C总线简介 1.I2C总线的基本结构 I2C总线由数据线SDA和时钟线SCL构成,每条线都通过上拉电阻接向正电源,所有采用I2C接口标准的器件均并行挂接在总线上,如图7-1所示. I2 ...
- 智能卡安全机制比较系列(六) TimeCOS
TimeCOS是握奇公司推出的智能卡操作系统,也可以说是国内早期自己开发的为数不多的几款COS之一.当然随着后来国内公司对于CPU卡开发的投入,其他公司的COS产品也纷纷推出. 其实从握奇的TimeC ...