js的对象 :数组对象,var arr=new Array() 其中的数组的表现形式和java的表形式是不一样的
js中将所有的组件进行封装成对象来操作,体现了万物皆对象的本质
js中的数组对象是将原来数组的定义进行了包装的展现
数组的定义总共有四种方式的定义:
1. 普通定义 var arr=new Array() ;
2. 指定长度的定义 var arr=new Array(length);
3. 直接在数组中进行初始化的操作 var arr=new Array("a",123,true);
4.直接量的定义: var arr=[元素列表];
数组的特点:
-数组的长度是可以进行变化的,即使数组的长度已经进行了初始化仍然是可以进行变化的
- Array对象中存在length属性进行数组的长度的元素的检测机制,提供数组元素的进入通道,lengj进行检测
- 数组元素的内容和数据类型可以相同也可以不同,数组的存储的内容是任意的数对象
- 数组中可以任意进行增删查改的操作,数组的下标可以一直无限延伸,即使前面的元素没有进行值,依旧可以进行插入的操作
- 数组的本质上是一个使用中括号进行包裹起来的使用逗号的分割内容的字符串,本质上使用字符串进行操作
js的内置对象:
Gloable对象——全局对象,js中有一些方法和属性经常被使用,但是方法总归是归属于对象的范围,基于这个考虑,所以在js中有一个对象Global对象整合了这些方法和属性,Global中定义的属性和方法属于全局,可以直接使用,存在于整个js页面中,谁都可以进行调用
主要方法:
escape 方法 | eval 方法 | isFinite 方法 | isNaN 方法 | parseFloat 方法 | parseInt 方法 | unescape 方法
String -- 基本数据类型 字符串类型 的包装对象
Boolean -- 基本数据类型 布尔类型 的包装对象
Nubmer -- 基本数据类型 数值类型 的包装对象
Array -- 数组类型 的包装对象
Function -- 函数类型 的包装对象
Math -- 数据对象,封装了很多数学常量和数学方法
Date -- 日期时间对象,封装了很多和日期实现相关的方法
RegExp --正则对象,保存有关正则表达式模式匹配信息的固有全局对象
js中的自定义对象,三种方式实现自定义的对昂–实质上都是通过构造函数进行创建
对象:拥有属性和方法具有一定行为的称之为对象
1. 构造函数:创建对象
/*第一种方式,通过构造函数进行创建*/
function Person(name,eat){
this.name=name;
this.eat=eat;
}
var p1=new Person("占山","function(){alert('吃...');}");
//alert(p1.name);
p1.eat;
2. 通过构造函数的声明继续对象的创建 /*第二种方式,通过函数的声明进行创建对象*/
function Person(){}
var p2=new Person();
p2.name="扎三";
p2.age=10;
//函数中的自动进行添加的内容
p2.say=function(){
alert("this ia a Constructor");
}
console.log(p2);
3. 直接量(JSON的形式来创建对象)
//函数属性额创建需要通过建立 键值对的方式进行属性的添加和删除
//添加 直接使用对象进行添加, 删除 delete进行删除
var p3={name:"颤三","eat":function(){alert("吃...")}};
p3.age=19;
p3.say=function(){alert("说")};
console.log(p3);
console.log(parseInt("123abc123"));
对象的操作:
with语句:定义了某个对象的作用域,在这个作用域中能够对该对象进行操作
var p = {name:"liubei",age:19,sleep:function()
{alert(this.name+"sleep.....")}};
with(p){
alert(name);
alert(age);
sleep();
}
for....in语句:用来遍历对象的所有属性的名称
var p = {name:"liubei",age:19,sleep:function()
{alert(this.name+"sleep.....")}};
alert(x);
for(var x in p){
}
delete语句:删除对象的属性,增加对象的属性可以随时进行增加
var p = {name:"liubei",age:19}
p.addr = "peixian";
alert(p.addr);
delete p.addr;
alert(p.addr);
JSON初现:JavaScript Object Notation js对象表示法
1. JSON是存储和交换文本信息的语法,类似于xml,基于字符串的操作内容
2. JSON相比于XML更小,更快,更容易解析
3. JSON中的操作都是基字符串的操作,所以字符串在书写JSON语句的时候形式都加上双引号进行书写,两者都字符串的表现形式
- JSON 英文全称 JavaScript Object Notation
JSON 是一种轻量级的数据交换格式。
JSON是独立的语言 *
JSON 易于理解。
JSON 使用 JavaScript 语法,但是 JSON 格式仅仅是一个文本.文本可以被任何编程语言读取及作为数据格式传递。
- JSON 语法规则
数据为 键/值 对。
数据由逗号分隔。
大括号保存对象
方括号保存数组
- JSON 文件
JSON 文件的文件类型是 ".json"
JSON 文本的 MIME 类型是 "application/json"
示例:json的表现形式
JSON 数据格式为 键/值 对,就像 JavaScript 对象属性
键/值对包括字段名称(在双引号中),后面一个冒号,然后是值:
"firstName":"John"
- JSON 字符串转换为 JavaScript 对象
1. JSON 文本格式在语法上与创建 JavaScript 对象的代码相同
2. 由于这种相似性,无需解析器,JavaScript 程序能够使用内建的 eval() 函数,用 JSON 数据来生成原生的 JavaScript 对象
3.
通常我们从服务器中读取 JSON 数据,并在网页中显示数据。
简单起见,我们网页中直接设置 JSON 字符串 (你还可以阅读我们的 JSON 教程):
首先,创建 JavaScript 字符串,字符传为 JSON 格式的数据:
json对象的使用方式:使用js中的数据进行转换
var text = '{ "employees" : [' +
'{ "firstName":"John" , "lastName":"Doe" },' +
'{ "firstName":"Anna" , "lastName":"Smith" },' +
'{ "firstName":"Peter" , "lastName":"Jones" } ]}';
然后,使用 JavaScript 内置函数 JSON.parse() 将字符串转换为 JavaScript 对象:
var obj = JSON.parse(text);