JavaScript的内部对象

按创建方式不同分为:使用变量声明的隐性对象,使用new创建的显性对象

隐性对象

在赋值和声明后就是一个隐性对象,隐性对象不支持prototype属性,也无法随意扩展对象属性。

显性对象

显性对象支持prototype属性,支持新建对象属性。

  • JavaScript提供了十一种内部对象

Boolean对象

Boolean对象是一种数据类型,提供构造函数可以创建布尔数据类型的对象

objboolean=new Boolean();

Funcation对象

JavaScript函数就是一个funcation对象,Funcation对象是函数,如果函数有参数,这些传入的参数都是argument对象

Global对象

Global对象不能使用new来创建,在脚本语言初始化时会自动创建此对象。

Number对象

Number对象,用于创建数值类型的变量

Object对象

使用Object对象创建自定义对象

RegExp对象

JavaScript的正则表达式对象

5-2JavaScript的string对象

  • 创建string对象

var obj="javascript";或var obj2=new string("JavaScript");两种方式

string对象提供了一系列的格式编排方法

String 对象方法

方法 描述

anchor() 创建 HTML 锚。

big() 用大号字体显示字符串。

blink() 显示闪动字符串。

bold() 使用粗体显示字符串。

fixed() 以打字机文本显示字符串。返回<tt>string</tt>中内容

fontcolor() 使用指定的颜色来显示字符串。

fontsize() 使用指定的尺寸来显示字符串。

fromCharCode() 从字符编码创建一个字符串。

link() 将字符串显示为链接。

italics() 使用斜体显示字符串。

localeCompare() 用本地特定的顺序来比较两个字符串。

slice() 提取字符串的片断,并在新的字符串中返回被提取的部分。

small() 使用小字号来显示字符串。

strike() 使用删除线来显示字符串。

sub() 把字符串显示为下标。

sup() 把字符串显示为上标。

toSource() 代表对象的源代码。

toString() 返回字符串。

valueOf() 返回某个字符串对象的原始值。

 <script  type ="text/javascript">
var obj = "JavaScript程序设计";
document.write("anchor():" + obj.anchor() + "<br/>");
document.write("big():" + obj.big() + "<br/>");
document.write("blink():" + obj.blink() + "<br/>");
document.write("bold():" + obj.bold() + "<br/>");
document.write("fixed():" + obj.fixed() + "<br/>");
document.write("fontcolor(red):" + obj.fontcolor("red") + "<br/>");
document.write("fontsize(6):" + obj.fontsize(6) + "<br/>");
document.write("italics()" + obj.italics() + "<br/>");
document.write("link()" + obj.link("https://home.cnblogs.com/u/cyjy/") + "<br/>");
document.write("small()" + obj.small() + "<br/>");
document.write("strike():" + obj.strike() + "<br/>");
document.write("sub():" + obj.sub() + "<br/>");
document.write("sup():" + obj.sup() + "<br/>"); </script>

  • 字符串的长度与大小写

length属性是用于获取字符串的长度

toLocaleLowerCase() 把字符串转换为小写。

toLocaleUpperCase() 把字符串转换为大写。

toLowerCase() 把字符串转换为小写。

toUpperCase() 把字符串转换为大写。

<script  type ="text/javascript">
var obj = "JavaScript";
var obj2 = new String("程序设计");
document.write("英文测试字符串:" + obj + "<br/>");
document.write("中文测试字符串:" + obj2 + "<br/>");
document.write("英文测试字符串length:" + obj.length + "<br/>");
document.write("中文测试字符串length:" + obj2.length+ "<br/>");
document.write("英文测试字符串小写:" + obj.toLowerCase() + "<br/>");
document.write("英文测试字符串大写:" + obj.toUpperCase() + "<br/>");
</script>

  • 获取字符串的指定字符

charAt(index) 返回在指定位置的字符。

charCodeAt(index) 返回在指定的位置的字符的 Unicode 编码。

<script  type ="text/javascript">
var obj = "JavaScript";
var obj2 = new String("程序设计");
document.write("英文测试字符串:" + obj + "<br/>");
document.write("中文测试字符串:" + obj2 + "<br/>");
document.write("英文测试字符串.charAt(4):" + obj.charAt(4) + "<br/>");
document.write("英文测试字符串charCodeAt(4):" + obj.charCodeAt(4) + "<br/>");
</script>

  • 子字符串的搜索

indexOf(string,index) 检索字符串。返回第一次找到字符串的索引位置,没有找到返回-1,传入的string是要搜索的参数,index为要搜索的索引位置

lastIndexOf(string) 从后向前搜索字符串。

match(string) 找到一个或多个正则表达式的匹配。没有找到返回null

search(string) 检索与正则表达式相匹配的值。

<script  type ="text/javascript">
var obj = "JavaScript";
var obj2 = new String("程序设计");
document.write("英文测试字符串indexOf('a'):" + obj.indexOf('a') + "<br/>");
document.write("英文测试字符串indexOf('a',2):" + obj.indexOf('a',2) + "<br/>");
document.write("中文测试字符串.indexOf('程序'):" + obj2.indexOf('程序') + "<br/>");
document.write("英文测试字符串.lastIndexOf('a') :" + obj.lastIndexOf('a') + "<br/>");
document.write("英文测试字符串.match('Java'):" + obj.match('Java') + "<br/>");
document.write("中文测试字符串.match('程序'):" + obj2.match('程序') + "<br/>");
document.write("英文测试字符串.search('Java'):" + obj.search('Java') + "<br/>");
document.write("中文测试字符串.search('学校'):" + obj2.search('学校') + "<br/>");
</script>

  •  子字符串的处理

replace(string1,string2) 替换与正则表达式匹配的子串。将string1换成string2

split() 把字符串分割为字符串数组。返回数组对象。

substr(index,length) 从起始索引号提取字符串中指定数目的字符。从index开始取出length个字符串

substring(index1,index2) 提取字符串中两个指定的索引号之间的字符。

concat(string) 连接字符串。将string字符串添加到string对象的字符串之后.

 <script  type ="text/javascript">
var obj = "JavaScript";
var obj2 = new String("程序设计");
document.write("英文测试字符串:" + obj + "<br/>");
document.write("中文测试字符串:" + obj2 + "<br/>");
document.write("英文测试字符串.replace('Script', '')" + obj.replace('Script', '') + "<br/>");
document.write("中文测试字符串.split('序')" + obj2.split('序') + "<br/>");
document.write("英文测试字符串.substr(2,4)" + obj.substr(2, 4) + "<br/>");
document.write("英文测试字符串obj2.substring(2,5)" + obj2.substring(2, 5) + "<br/>");
</script>

将12/5/2012变为2012-5-12;

 var obj = "12/5/2012";          
      var obj = obj.replace(/\//g,"-"); 
  var obj2=obj.replace(/(\d{2})-(\d{1}|\d{2})-(\d{4})/g,'$3-$2-$1');
      alert(obj2); 
 
 
  • JavaScript的Array对象

 JavaScript数据类型中没有数组,而是使用Array对象来创建数组,每一个数组元素事实上就是Array对象的属性。
创建一维数组

new Array();

new Array(size);

new Array(element0, element1, ..., elementn);

<script  type ="text/javascript">
var arr = new Array(1,2,3,4);
var arr2 = new Array(3);
arr2[0] = "one";
arr2[1] = "two";
arr2[2] = "three";
//用循环显示数组值
for (var i = 0; i <=arr.length; i++)
{
document.write(arr[i] + "<br/>");
}
for (var i = 0; i <3; i++) {
document.write(arr2[i] + "<br/>");
}
</script>

Array对象的属性与方法

length属性获取数组长度

方法 描述
concat(arry) 连接两个或更多的数组,并返回结果。将参数合并到当前的数组中
join() 把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔。

pop() 删除并返回数组的最后一个元素
push() 向数组的末尾添加一个或更多元素,并返回新的长度。
shift() 删除并返回数组的第一个元素
slice() 从某个已有的数组返回选定的元素
splice() 删除元素,并向数组添加新元素。
toSource() 返回该对象的源代码。
toString() 把数组转换为字符串,并返回结果。
reverse() 颠倒数组中元素的顺序。
sort
(arry)将数组的所有元素排序

<script  type ="text/javascript">
var arr = new Array(1,2,3,4);
var arr2 = new Array(3);
arr2[0] = "one";
arr2[1] = "two";
arr2[2] = "three";
function showarr(arr) {
for (var i = 0; i < arr.length; i++) {
document.write(arr[i] + ","); }
}
document.write("数组长" + arr2.length + "<br/>");
document.write(arr2.join() + "<br/>");
arr2.reverse();//反转数组
document.write("<br/>");
showarr(arr);
document.write("<br/>");
arr = arr.concat(arr2);//连接两个数组
showarr(arr);
</script>

JavaScript的多维数组

<script  type ="text/javascript">
var arr = new Array(3);
for (var i = 0; i < 3; i++)
{
arr[i] = new Array(2);
}
arr[0][0] = "1";
arr[0][1] = "2";
arr[1][0] = "3";
arr[1][1] = "4";
arr[2][0] = "5";
arr[2][1] = "6";
for (var j= 0; j< arr.length;j++)
{
for (i = 0; i < arr[i].length; i++) {
document.write(arr[j][i]);
}
document.write("<br/>"); }
</script>

  • JavaScript的Date对象

Date对象可以获取计算机的系统时间和日期,并且提供相关的方法将它转化为所需的日期数据。

创建Date对象

var youDate=new Date()

Date 对象会自动把当前日期和时间保存为其初始值。

Date() 返回当日的日期和时间。
getDate() 从 Date 对象返回一个月中的某一天 (1 ~ 31)。
getDay() 从 Date 对象返回一周中的某一天 (0 ~ 6),也就是星期日到星期六。
getMonth() 从 Date 对象返回月份 (0 ~ 11)。
getFullYear() 从 Date 对象以四位数字返回年份。
getYear() 请使用 getFullYear() 方法代替。
getHours() 返回 Date 对象的小时 (0 ~ 23)。
getMinutes() 返回 Date 对象的分钟 (0 ~ 59)。
getSeconds() 返回 Date 对象的秒数 (0 ~ 59)。
getMilliseconds() 返回 Date 对象的毫秒(0 ~ 999)。
getTime() 返回 1970 年 1 月 1 日至今的毫秒数。

<script  type ="text/javascript">
var youDate = new Date();
document.write("系统日期:" + youDate.getDate());
document.write("<br/>");
document.write("系统时间:" + youDate.getHours() + ":" + youDate.getMinutes()+":"+youDate.getSeconds());
</script>

设置时间和日期

setDate() 设置 Date 对象中月的某一天 (1 ~ 31)。
setMonth() 设置 Date 对象中月份 (0 ~ 11)。
setFullYear() 设置 Date 对象中的年份(四位数字)。
setYear() 请使用 setFullYear() 方法代替。
setHours() 设置 Date 对象中的小时 (0 ~ 23)。
setMinutes() 设置 Date 对象中的分钟 (0 ~ 59)。
setSeconds() 设置 Date 对象中的秒钟 (0 ~ 59)。
setMilliseconds() 设置 Date 对象中的毫秒 (0 ~ 999)。
setTime() 以毫秒设置 Date 对象。

JavaScript的Date对象可以获取系统时间,只需定时执行JavaScript函数就可以建立一个网页时钟,同时需要使用setTimeout(),参数中可以设置间隔多少时间来执行函数,clearTimeout()可以清除定时器

  • JavaScript的Math对象

Math对象不同于其他JavaScript对象,Math对象是由脚本语言引擎所创建的,不需要使用new来创建。

max(x,y) 返回 x 和 y 中的最高值。
min(x,y) 返回 x 和 y 中的最低值。
pow(x,y) 返回 x 的 y 次幂。
random() 返回 0 ~ 1 之间的随机数。

需要获得更大的随机数乘以相关的倍数就可以了

<script  type ="text/javascript">
var num = Math.round(Math.random() * 100);
document.write("0~100之间的随机数"+num);
</script>

JavaScript的Error对象

try catch finally处理例外。

JavaScript对象的共享属性和方法

属性 constructor属性可以获取创建对象使用的构造函数的函数名称

tostring()方法和value()可以显示对象的内容。

最新文章

  1. Maximo-获取url
  2. http://jingyan.baidu.com/article/86112f13582848273797879b.html
  3. 《Code Complete》ch.16 控制循环
  4. 代码规范-IAR设置
  5. 基于HTML5的SLG游戏开发(序)
  6. 同步队列-Queue模块解析
  7. Redshift扩容及踩到的坑
  8. python书籍推荐:python编码推荐(高清完整pdf)
  9. Arch Linux VMware虚拟机(新手)安装教程
  10. odoo 数据库到期提醒
  11. 视频剪辑软件原型-videocut
  12. 洛谷 P1706 全排列问题
  13. json、数组、html标签的修改删除
  14. 转--python 面试题
  15. php数据库的增删改查
  16. Nginx+Tomcat+Memcached 实现集群部署时Session共享
  17. 【题解】 BZOJ4548 小奇的糖果
  18. linux 查看 内存条具体信息, 几根内存条 命令
  19. Silverlight 安装失败 提示 消息 ID 1603 的解决方法
  20. selendroid之toast处理

热门文章

  1. js之语句的一些需要注意的事情
  2. 【leetcode刷题笔记】Decode Ways
  3. 319 Python基础之格式化输出、逻辑运算符、编码、in not in、while else、
  4. python详细目录
  5. 用Delphi模拟键盘输入
  6. Java企业微信开发_03_自定义菜单
  7. php 冒泡排序原理
  8. 【leetcode刷题笔记】Remove Nth Node From End of List
  9. IP通信中音频编解码技术与抗丢包技术概要
  10. 使用WindowsAPI获取录音音频的方法