读javascript高级程序设计08-引用类型之Global、Math、String

简介:

一、Global

所有在全局作用域定义的属性和方法,都属于Global对象。

1.URI编码:

encodeURI():主要用于对整个URI编码。它不会对本身属于URI的特殊字符进行编码。

encodeComponentURI():主要用于对URI中的某一部分进行编码,很常用的是对查询字符串参数进行编码。它会对所有非标准字符进行编码。

对应的解码方法是decodeURI()和decodeURIComponent。

复制代码
var uri='http://www.cnblogs.com?a=1 2&b=陈&c=123';
var a=encodeURI(uri);// http://www.cnblogs.com?a=1%202&b=%E9%99%88&c=123
var b=encodeURIComponent(uri);// http%3A%2F%2Fwww.cnblogs.com%3Fa%3D1%202%26b%3D%E9%99%88%26c%3D123
decodeURI(a);//√"http://www.cnblogs.com?a=1 2&b=陈&c=123"
decodeURI(b);//×"http%3A%2F%2Fwww.cnblogs.com%3Fa%3D1 2%26b%3D陈%26c%3D123"
decodeURIComponent(a);//√"http://www.cnblogs.com?a=1 2&b=陈&c=123"
decodeURIComponent(b);//http://www.cnblogs.com?a=1 2&b=陈&c=123
复制代码

2.eval()方法

当调用eval()方法时,会执行参数中传入的语句,并把执行结果插入到原位置。

该方法执行的代码与当前调用环境具有相同的作用域链。

var a=1;
eval('function test(){alert(a);}');
test();//结果1

3.在web浏览器中,全局作用域的变量和方法都会成为window对象的属性。

复制代码
var name='jing';
function sayName(){
console.log(name);
}
window.sayName(window.name);//jing
复制代码

二、Math对象

Math对象包含了很多数据计算的属性和方法。常用的几个:

1.Math.min()和Math.max:计算一组数值中的最大值和最小值,参数可以任意多个数值。

Math.min(3,5,10,88,3);//
Math.max(3,5,10,88,3)//88


当计算一个数组中的最大最小值时,可以这样调用:

var result=[3,5,10,88,3];
Math.min(result);//错误,NaN
Math.min.apply(Math,result);//3

2.舍入方法

Math.ceil():向上取整;

Math.floor():向下取整;

Math.round():四舍五入取整。

复制代码
var data=5.6;
Math.ceil(data);//6
Math.floor(data);//5
Math.round(data);//6
Math.round(5.4)//5
复制代码

3.随机数random ()

Math.random()返回一个介于0和1之间的随机数,不包含0和1。

取一个整数范围内的随机数可以这样来计算:

result=(Math.random()*可能取值的总数+第一个可能的值)

三、String类型

1.字符方法

charAt(n):直接返回字符串中指定位置的字符;

charCodeAt(n):返回指定位置字符的字符编码。

var s="Javascript高级程序设计";
console.log(s.charAt(10));//
console.log(s.charCodeAt(10));//39640

2.取子串

slice():第一个参数是子串开始位置索引,第二个参数是子串结束位置索引(不包括结束字符).

substring():第一个参数是子串开始位置索引,第二个参数是子串结束位置索引(不包括结束字符).

substr():第一个参数是子串开始位置索引,第二个参数是子串长度.

var s="提醒一下七夕节快到了";
console.log(s.slice(4,7));
console.log(s.substring(4,7));
console.log(s.substr(4,3));

3.字符串模式匹配

search(reg):返回字符串中第一个匹配项的索引,如果匹配不到就返回-1。方法有一个参数,可以是正则表达式或者RegExp对象。

match(reg):该方法有一个参数,可以是正则表达式或者RegExp对象。

replace():替换子串。如果想替换所有匹配的子串,那么只能用正则表达式。

复制代码
var s='http://www.cnblogs.com/1/1/'
var r=/\d+/g;
s.search(r);//23
s.match(r);//["1","1"]

//只替换第一个匹配项
s.replace('1','janes')//"http://www.cnblogs.com/janes/1/"

//替换所有匹配项
s.replace(r,'janes');//"http://www.cnblogs.com/janes/"
复制代码
目录
打赏
0
0
0
0
347
分享
相关文章
js的基础类型和引用类型
【10月更文挑战第29天】理解 JavaScript 中的基础类型和引用类型的区别对于正确地编写代码和理解程序的行为非常重要。在实际开发中,需要根据具体的需求合理地选择和使用不同的数据类型,以避免出现一些意想不到的错误和问题。同时,在处理引用类型数据时,要特别注意对象的引用关系,避免因共享引用而导致的数据不一致等问题。
JavaScript 数据类型详解:基本类型与引用类型的区别及其检测方法
JavaScript 数据类型分为基本数据类型和引用数据类型。基本数据类型(如 string、number 等)具有不可变性,按值访问,存储在栈内存中。引用数据类型(如 Object、Array 等)存储在堆内存中,按引用访问,值是可变的。本文深入探讨了这两种数据类型的特性、存储方式、以及检测数据类型的两种常用方法——typeof 和 instanceof,帮助开发者更好地理解 JavaScript 内存模型和类型检测机制。
187 0
JavaScript 数据类型详解:基本类型与引用类型的区别及其检测方法
JavaScript 字符串(String) 对象
JavaScript 字符串(String) 对象
66 3
JavaScript写个.ts视频文件Url生成器,使用了string.padStart
JavaScript写个.ts视频文件Url生成器,使用了string.padStart
javaScript中常用的String方法以及注意点总结
本文总结了JavaScript中常用的String对象的方法及其注意事项,包括大小写转换、字符获取、子字符串截取、字符串拼接、去除空格、替换、分割以及查找字符串中字符的索引等操作。提供了每种方法的使用示例代码,帮助理解它们的具体用法和差异。
62 2
今天被JavaScript的String型和数字型的+运算撞了一下腰。
今天被JavaScript的String型和数字型的+运算撞了一下腰。
|
5月前
|
java基础(13)String类
本文介绍了Java中String类的多种操作方法,包括字符串拼接、获取长度、去除空格、替换、截取、分割、比较和查找字符等。
62 0
java基础(13)String类
【c++丨STL】string类的使用
本文介绍了C++中`string`类的基本概念及其主要接口。`string`类在C++标准库中扮演着重要角色,它提供了比C语言中字符串处理函数更丰富、安全和便捷的功能。文章详细讲解了`string`类的构造函数、赋值运算符、容量管理接口、元素访问及遍历方法、字符串修改操作、字符串运算接口、常量成员和非成员函数等内容。通过实例演示了如何使用这些接口进行字符串的创建、修改、查找和比较等操作,帮助读者更好地理解和掌握`string`类的应用。
96 2
|
4月前
|
【编程基础知识】(讲解+示例实战)方法参数的传递机制(值传递及地址传递)以及String类的对象的不可变性
本文深入探讨了Java中方法参数的传递机制,包括值传递和引用传递的区别,以及String类对象的不可变性。通过详细讲解和示例代码,帮助读者理解参数传递的内部原理,并掌握在实际编程中正确处理参数传递的方法。关键词:Java, 方法参数传递, 值传递, 引用传递, String不可变性。
93 1
【编程基础知识】(讲解+示例实战)方法参数的传递机制(值传递及地址传递)以及String类的对象的不可变性

热门文章

最新文章