回顾

1.什么是基本类型?

共5个。boolean,string,number,null,undefined.

2.什么是引用类型?

引用类型的值是对象,保存在堆内存中;

引用类型的变量实际上是一个指针,它保存在栈中,指向堆内存中的对象;

包括:object  array  date  regexp  function

3.什么是基本包装类型?

既是基本,也是引用,所以叫做基本引用类型。

基本包装类型是对基本数据类型的封装,封装后即具有基本类型的功能,也有各自的特殊行为(方法)

4.和基本类型有什么区别?

区别在于对象的'生存期'。基本包装类型只存在于代码的执行瞬间,然后立即被销毁。

Boolean类型:

  typeof对基本类型返回“boolean”,而对引用类型返回“object”。

  其次,由于Boolean对象是Boolean类型的实例,所以使用instanceof操作符测试Boolean对象会返回true,而测试基本类型的布尔值则返回false。

  建议永远不要使用Boolean对象!

Number类型:

  创建number对象,可以在调用Number构造函数时向其中传递相应的数值:

var numberObject = new Number(10);

  Number类型还提供一些用于将数值格式化为字符串的方法:toFixed()方法

  

1.toFixed()方法会按照指定的小数位返回数值的字符串表示:(即以0填补必要的小数位)

var num=10;
alert(num.toFixed(2));  //"10.00

  

2.toExponential(),该方法返回以指数表示法(e表示法)表示的数值的字符串形式。也可以接收一个参数,指定输出结果中的小数位数。

3.toPrecision()方法

可能会返回固定大小格式,也可能返回指数(exponential)格式;具体规则是看哪种格式合适。可以接收一个参数,表示数值的所有数字的位数(不包括指数部分):

var num = 99;
alert(num.toPrecision(1));//"1e 2"
alert(num.toPrecision(2));//"99"
alert(num.toPrecision(3));//"99.0"

注意:typeof 测试基本类型,返回number;测试number对象时,返回“object”。number对象是number类型的实例,而基本类型的数值则不是。

String()方法:

var stringObject = new String("hello world");

//length属性var stringValue = "hello world";alert(stringValue.length);     //"11"

1.字符方法:

  两个:charAt()和charCodeAt()

//charAt()方法以单字符字符串的形式返回给定位置的那个字符var stringValue = "hello world";
alert(stringValue.charAt(1));  //"e"
//【字符编码】形式返回给定位置的字符var stringValue = "hello world";
alert(stringValue.charCodeAt(1));  //"101"

2.字符串操作方法

  concat():拼接字符串,返回拼接后的新字符串

var stringValue = "hello ";
var result = stringValue.concat("world");
alert(result);        //hello world
alert(stringValue);   //hello 
//可以接收任意多个参数,即拼接任意多个字符串var stringValue = "hello ";
var result = stringValue.concat("world","!");alert(result);
alert(stringValue);  

  str(),substring(),substr():

  注意:substring() 不接受负的参数;

       substr()方法、slice()方法中的参数如果是负数,那么它规定的是从数组尾部开始算起的元素。

var stringValue = "hello world";
alert(stringValue.slice(3,7)); //"lo w" alert(stringValue.substring(3,7)); //"lo w"
alert(stringValue.substr(3,7)); //"lo world"
var stringValue = "hello world";
alert(stringValue.slice(3,-4)); //"lo w"
alert(stringValue.substring(3,-4));  //"hel"
alert(stringValue.substr(3,-4));  //" "

1.slice()方法会把第二个负值的参数转换为“字符串长度 负值”(本例中“hello world”共11个字符(含括号),所以是11-4=7),也就是说slice(3,-4)==> slice(3,7)==>"lo w"

2.substring()方法会将负值转换为0,substring(3,-4)==>substring(3,0),又因为这个方法会将较小的值作为开始位置、较大的值作为结束位置,所以==>substring(0,3)==>取前3个字符==>"hel"

3.substr()方法也将第二个参数转换为0。而substr()方法的第二个参数本身的含义是 ”返回的字符个数”,当值为0时,即返回0个字符。所以第二个参数为负值时,该方法返回空字符串。

更多专业前端知识,请上 【猿2048】www.mk2048.com

js基本包装类型和引用类型相关推荐

  1. 基本包装类型和引用类型

    基本包装类型和引用类型 一.相关概念 1.定义 为了便于操作基本类型值,JavaScript提供了三个特殊的引用类型:Boolean.Number和String.这些类型与其他引用类型相似,但同时也具 ...

  2. JS:基本类型和引用类型

    JS中的基本类型和引用类型 1.基本类型:number.boolean.string.undefined. null 2.引用类型:array.object.function.regexp- 一.基本 ...

  3. LV2之-----js 值类型和引用类型(基石1)

    一.学习目标 1.值类型和引用类型的基本概念 2.常见的值类型和引用类型都有哪些? 3.数据类型检测 4.值类型和引用类型在内存中的存储机制 5.创建对象的方式有哪些? 6.对象属性名的点表示法和方括 ...

  4. JS基础类型和引用类型

    JS基础类型和引用类型脑图

  5. JavaScript 基本类型和引用类型区别

    基本概念 JS有以下这些数据类型:undefined.null.string.boolean.number.symbol.bigint.object. 其中,前面 7 个被称为基本类型,又叫原始类型( ...

  6. java面向对象(类与对象,局部变量成员变量,基本类型和引用类型作为参数传递)...

    一.类和对象的区别 类是对某一类事物的抽象描述,而对象用于表示现实中该类事物的个体 可以将玩具模型看作是一个类,将一个个玩具看作对象,从玩具模型和玩具之间的关系便可以看出类与对象之间的关系.类用于描述 ...

  7. Java Native Interface 二 JNI中对Java基本类型和引用类型的处理

    本文是<The Java Native Interface Programmer's Guide and Specification>读书笔记 Java编程里会使用到两种类型:基本类型(如 ...

  8. 基本类型和引用类型的值 函数的传递参数

    ECMAScript中函数的传参都是按值传递的. 不管是传基本类型的值还是引用类型的值都是按值传递,访问变量则分按值和按引用两种方式. 向参数传递基本类型的值 被传递的值会被复制(对应文章<基本 ...

  9. javascript变量中基本类型和引用类型的详解解读

    前言: Javascript语言中的变量和其他语言的变量有很大区别,javascript松散类型的本质,决定了它只是在特定时间时间保存特定值得名字而已.由于不存在定义某个变量必须保存何种数据类型值的规 ...

最新文章

  1. 数据结构(C语言版) 第 八 章 排序 知识梳理 + 习题详解
  2. 利用OpenCV的级联分类器类CascadeClassifier和Haar特征实现人脸区域的检测
  3. mysql打包成docker_web应用如何打包成docker镜像?
  4. Ubuntu Server安全Webserver搭建流程
  5. *【HDU - 5711】Ingress(tsp旅行商问题,优先队列贪心,状压dp,floyd最短路,图论)
  6. eventfd-aio-test.c
  7. 第6篇 熊猫烧香专杀工具编写
  8. html视频标签略缩图,JavaScript截取video标签视频缩略图 方法1
  9. ArduinoUNO实战-第四章-按键控制led
  10. matlab求函数在区间内最大值与最小值
  11. mysql自定义函数的创建
  12. 【Lintcode】1132. Valid Triangle Number
  13. Docker学习之docker重启参数--restart=always的作用
  14. 计算机音乐夜空,星空音乐在线点播系统
  15. 动手写操作系统9----键盘鼠标中断实现
  16. google的秘密入口+搜索技巧
  17. 谷歌浏览器插入百度翻译插件
  18. Anaconda教程
  19. 做好站外推广之论坛推广的技巧
  20. 获取Flickr API key及利用Python获取Flickr数据

热门文章

  1. 【OFDM系列1】OFDM调制原理、参数、循环前缀、采样偏差、频偏及估计详解
  2. 一个直角三角形的两个直角边是 a,b(a≤b),其斜边是 c,且 a,b,c都是正整数。现在我们已经知道了斜边长度c,请问这个直角三角形的两个直角边的长度是什么?Java
  3. 计算机基础知识第3版答案,计算机基础知识试题库及答案(3)
  4. linux权限c是什么意思,linux服务器下权限设置
  5. HDU 3555 Bomb (数位DP)
  6. C#找出数组中重复次数最多的数值
  7. adodb.stream对象的方法/属性
  8. 小学计算机三年级课程目录,小学生信息技术课本目录.doc
  9. Pycharm的远程代码编辑
  10. redhat/centos 搭建svn服务器环境