js数据类型_js nodetype类型_js定义float类型数据

js数据类型主要有一下几个部分:

值类型(基本类型):

1.字符串类型(string)

2.数值类型(number)

3.布尔类型(boolean)

4.对空类型(Null)

5.未定义类型(Undefined)

6.symbol类型:ES6 引入了一种新的原始数据类型js数据类型js数据类型,表示独一无二的值。

引用数据类型:

1.对象类型(Object)

2.数组类型(Array)

3.函数类型(Function)

4.日期类型(Date) (补充)

对象类型(Object类)

object类型是js中所有对象的基类(父类),即JS中的所有对象都是由object衍生出来的。提供了一种创建自定义对象的简单方式,可以不需要定义构造函数。

主要作用:

将任何数据类型封装成对象类型。

主要属性:

constructor:对象的构造函数。prototype:获得类的prototype对象,static。

主要方法:

1.hasOwnProperty(propertyName):判断对象是否具有某一个特定的属性。

注意:必须用字符串指定该属性,返回Boolean值。

var str ="object方法hasOwnProperty()"; //转义字符 "----" , n--换行
alert("str.hasOwnProperty("split")返回an"+str.hasOwnProperty("split")); 
//return false

js数据类型_js定义float类型数据_js nodetype类型

var str = "object方法hasOwnProperty()"; //转义字符 "----" , n--换行
 alert("String.prototype.hasOwnProperty("split")的结果是:n" + String.prototype.hasOwnProperty("split"));
//return true

js定义float类型数据_js nodetype类型_js数据类型

2.isPrototypeOf(object):判断该对象是否为另一对象的原型。

注意:原型链可以用来在同一个对象类型的不同实例之间共享功能。

obj1.isPrototypeOf(obj2);//obj2 是原型链

例如:

function present() {
 this.name = 'present food';
}
function foods() {}
foods.prototype = new present();
var goods = new foods();
alert(goods.name); //present food
alert(foods.prototype.isPrototypeOf(goods));//true,在foods的原型链中有当前对象goods,因此isPrototypeOf方法返回true 

js数据类型_js定义float类型数据_js nodetype类型

js数据类型_js定义float类型数据_js nodetype类型

3.propertyIsEnumberable(propertyName):判断该对象成员是否可以遍历(for in循环)。

注意:预定义的属性不是可列举的,用户定义的属性总是可列举的。

预定义:

var pig = "abcde";
alert(pig.propertyIsEnumerable());

js nodetype类型_js定义float类型数据_js数据类型

用户自定义:

var p = new Object(); //通过Object直接创建对象
p.Age = 1;//为p对象动态添加属性
document.writeln("p.propertyIsEnumerable("Age"):" + p.propertyIsEnumerable("Age"));

js nodetype类型_js数据类型_js定义float类型数据

4.ToString():返回改对象对应的字符串(类型转换)。

//var p = new Object(); //通过Object直接创建对象
//p.Age = 1;//为p对象动态添加属性
//document.writeln("p.Age.toString():" + p.Age.toString());//

js数据类型_js定义float类型数据_js nodetype类型

5.valueof():返回对象对应的原始类型。

var p = new Object(); //通过Object直接创建对象
p.Age = 1;//为p对象动态添加属性
document.write("p.valueOf():" + p.valueOf());//

js定义float类型数据_js数据类型_js nodetype类型

综合实例:

var p = new Object(); //通过Object直接创建对象
p.Age = 1;//为p对象添加属性
p.Name="剑云锋";
//扩展Object类,为Object类添加一个Show方法
Object.prototype.Show=function(){
 alert(this.Age+"t"+this.Name);
}
alert(p.Age);
p.Show();
document.write("
");
document.writeln("p.constructor:"+p.constructor);//得到对象的构造函数 
document.writeln("Object.prototype:" + Object.prototype);//得到prototype对象,prototype是静态属性,只能通过"类名.prototype"去访问 
document.writeln("p.hasOwnProperty("Age"):" + p.hasOwnProperty("Age"));//
document.writeln("p.isPrototypeOf(p):"+p.isPrototypeOf(p)); //
document.writeln("p.propertyIsEnumerable("Age"):" + p.propertyIsEnumerable("Age"));//
document.writeln("p.toString():" + p.toString());//
document.writeln("p.valueOf():" + p.valueOf());//
document.write("

");

js数据类型_js nodetype类型_js定义float类型数据

综合实例2:

var Bar = function () { };
Bar.prototype.hello = function () {
 alert("hello Bar");
};
var bar = new Bar();
bar.f = function () {
 alert("自定义方法");
}
document.write("
");
document.writeln("bar.hasOwnProperty("f")的结果是:" + bar.hasOwnProperty("f"));//返回ture,bar对象有f方法
document.writeln("bar.propertyIsEnumerable("f")的结果是:" + bar.propertyIsEnumerable("f"));//返回ture,bar对象有f方法,f方法是可以被枚举的
document.writeln("bar.hasOwnProperty("hello")" + bar.hasOwnProperty("hello")); //返回 false,因为bar本身没有hello方法
document.writeln("bar.propertyIsEnumerable("hello")的结果是:" + bar.propertyIsEnumerable("hello")); // 返回false,没有这个方法当然不能枚举
document.writeln("bar.constructor.prototype.hasOwnProperty("hello")的结果是:" + bar.constructor.prototype.hasOwnProperty("hello"));//返回 true,bar的类Bar的原型有hello方法
document.writeln("bar.constructor.prototype.propertyIsEnumerable("hello")的结果是:" + bar.constructor.prototype.propertyIsEnumerable("hello"));// 返回true, bar的类的Bar的原型hello方法是可以被枚举的
document.writeln("Bar.prototype.hasOwnProperty("hello")的结果是:" + Bar.prototype.hasOwnProperty("hello"));// 返回true,bar的类Bar的原型有hello方法
document.writeln("Bar.prototype.propertyIsEnumerable("hello")的结果是:" + Bar.prototype.propertyIsEnumerable("hello"));//返回true
document.write("

");

js数据类型_js nodetype类型_js定义float类型数据

限时特惠:本站每日持续更新海量设计资源,一年会员只需29.9元,全站资源免费下载
站长微信:ziyuanshu688