本文介绍 JavaScript 中对象的创建与修改方法,涵盖直接实例化、构造函数及字面量语法。详细解析数字的 IEEE754 浮点标准、字符串常用方法、日期与数组操作,以及正则表达式的创建与匹配机制,帮助开发者快速掌握 JS 核心语法。
JavaScript 对象基础
1. 谈谈Javascript的对象
JavaScript 属于弱类型且为动态类型的编程语言。在实际开发中,经常需要调用 JavaScript 内置的对象或构建自定义对象。
1.1 如何创建对象 JavaScript 作为弱类型语言,无需像 Java 或 C# 等强类型语言那样强制通过构造函数来实例化对象。在 JavaScript 中,主要存在两种创建对象的方式:一是直接使用 new 关键字定义,二是通过函数定义。具体示例如下:
//第一种方式,直接通过new创建对象;
var demo = new Object();
demo.name = "Anderson";
demo.sex = "male";
demo.age = 23;
//第二种格式,直接实例化,基本上和Json语法是一致的,一般作为第一种方式的替代语法。
var demo = {name:"Anderson",sex:"male",age:25};
//第三种格式,通过构造器来创建对象
function Demo(name,sex,age){
this.name = name;
this.sex = sex;
this.age = age;
}
var demo = new Demo("Andeson","male",25);
对象的动态修改
1.2 如何修改对象
JavaScript 的对象语法与高级静态类型语言存在差异,其限制相对宽松。在对象创建完成后,可以动态修改对象的属性和方法,例如新增属性或添加新方法。
var demo = {Name:"Anderson"};
demo.Sex = "male";
核心内置对象解析
1.3 理解Javascript中的数字对象
在 JavaScript 中,所有数值均采用 64 位格式,由浮点类型构成。JavaScript 遵循 IEEE754 标准定义的 64 位浮点数格式来表示数字,其能表示的最大值为 ±1.7976931348623157 x 10308,最小值为 ±5 x 10 -324。
var demo1 = 7; //十进制表示法
var demo2 = 07; //八进制表示法
var demo3 = 0x12; //十六进制表示法
var demo4 = 12e12; //科学计数法表示法
var demo5 = 12e-12; //科学计数法表示法
var demo7 = 128;
var demo8 = demo7.toString(16); //转化为十六进制
var demo9 = demo7.toString(8); //转化为八进制
var demo10= demo7.toString(2); //转化为二进制
var demo11= Infinity; //无穷大表示法
var demo12= isNaN(100); //非数字值表示法
var demo13= typeof(12); //数字的类型为 Number
var demo14= typeof(new Number(12)); //Number的类型为Object
var demo15 = (demo13 == demo14); //两者相等
var demo16 = (demo13=== demo14); //两者不相等
1.4 理解Javascript中的字符串对象
var str = "Hello,Anderson";
var demo1 = str[0]; //通过索引,获取字符串中的字符,超出最大值则返回undefined
var demo2 = str.indexOf("H"); //获取目标字符串在源字符串中的位置,找不到则返回 -1
var demo3 = str.length; //获取字符串的长度
var demo4 = str.lastIndexOf("H"); //获取目标字符串在源字符串中的位置,从串尾开始找,找不到返回-1
var demo5 = str.match("Anderson");//从源串中匹配目标串,若有,则返回目标串,否则,返回返回 null
var demo8 = str.replace("A","d"); //将源串中的目标串替换为替换串
var demo9 = str.toUpperCase(); //转换为大写
var demo10= str.toLowerCase(); //转换为小写
var demo11= str.split("d"); //转化为数组
var demo12= "\'"; //表示单引号
var demo13= "\""; //表示双引号
var demo14= "\\"; //表示斜杠
var demo15= "\n"; //表示换行
var demo16= "\r"; //表示回车
var demo17= "\t"; //表示制表符
var demo18= "\b"; //表示空格
var demo19= "\f"; //表示换页
1.5 理解Javascript中的日期对象
var demo1 = new Date(); //创建对象,当前日期
var demo2 = new Date(22e9); //创建对象,毫秒数
var demo3 = new Date("2016-06-04");//创建对象,日期字符串
var demo4 = new Date(2016,5,12,12,12,12); //创建对象,年月日时分秒
var demo5 = (demo1 > demo2); //比较日期
1.6 理解Javascript中的数组对象
var demo1 = new Array(1,2,3,4); //创建数组
var demo2 = [1,3,4,5]; //创建数组
var demo3 = demo1.concat(demo2); //合并数组
var demo5 = demo1.concat(demo2,demo3);//合并数组
1.7 理解Javascript中的正则对象RegExp
RegExp 是正则表达式 (Regular Expression) 的缩写。正则表达式主要用于文本检索。其基本语法形式如下:
var pattern = new RegExp(pattern,modifiers); //通过构造方法创建正则对象
var pattern = /pattern/modifiers; //直接声明正则对象
//其中,修饰符modifiers有两种,i和g,i表示不区分大小写,g表示全文检索
//pattern表示检索模型
var str = "Hello, Anderson Lu";
var pattern = /llo/gi;
var demo1 = str.match(pattern); //使用实例
var pattern2 = new RegExp("\\Lu\\gi");
var demo2 = pattern2.test(str); //判断str中是否有符合模式pattern2的串,返回true或者false
var demo3 = pattern2.exec(str); //返回匹配的字符串
好了,本文到此就结束了,除此之外,还有一些其他的对象,比如Math算术和布尔等等。大家可以通过本站来进行学习。