js04---object1

我们目前为止大多数引用类型都是Object类型的实例,Object也是ECMAScript中使用最多的一种类型(就像java.lang.Object一样,Object类型是所有它的实例的基础)。Object类型的创建方式、使用对于Object类型应用for in 枚举循环 

Object每个实例都会具有下列属性和方法:
Constructor: 保存着用于创建当前对象的函数。(构造函数)
hasOwnProperty(propertyName):用于检测给定的属性在当前对象实例中(而不是原型中)是否存在。
isPrototypeOf(Object): 用于检查传入的对象是否是另外一个对象的原型。
propertyIsEnumerable(propertyName):用于检查给定的属性是否能够使用for-in语句来枚举。
toLocaleString():返回对象的字符串表示。该字符串与执行环境的地区对应.
toString():返回对象的字符串表示。
valueOf():返回对象的字符串、数值或布尔表示。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>Untitled Document</title>
        <script type=text/javascript charset=utf-8>
/*var obj = {} ;
obj.say = function FF(){  //这里的FF外部是使用不了的
    alert(‘hello world!‘);
}
FF();//FF is not defined,相当于window.FF(),没有window.FF = function(){}
var f = new FF();//FF is not defined  */

        //Object 所有类的基础类
        var obj1 = new Object();
        var obj = {} ;        // 实例化对象,2中写法一样,
        // 给对象设置属性
        obj.name = ‘张3‘;
        obj.age  = 20 ;
        obj.sex  = ‘男‘;
        obj["birthday"] = ‘1980-08-07‘;
        obj.say = function(){  //匿名对象
            alert(‘hello world!‘);
        }
        // 访问对象的属性或方法
        alert(obj.name);
        alert(obj.age);
        obj.say();

        // delete 操作符 删除对象的属性或方法的
        delete obj.age ;
        delete obj.say ;
        alert(obj.name);
        alert(obj.age);//undefined
        alert(obj.sex);
        obj.say();//say is not a fuchtion

        //遍历js对象,便利json,
        for(var attribute in obj) {
            alert(attribute + typeof attribute +" : "+ obj[attribute]);  //obj[attribute]要用中括号,不能用点。
        }
        //name string : 张3,  age string : 20  ,sex string : 男 ,birthday string : 1980-08-07  ,say string : function(){alert(‘hello world!‘);}

        //Constructor保存对象的创建函数
        alert(obj.constructor);//function Onject(){}
        var arr = [] ;
        alert(arr.constructor);//function Array(){}

        //hasOwnProperty(propertyName) 用于检测给定属性在对象中是否存在
        alert(obj.hasOwnProperty(‘sex‘));

        //isPrototypeOf(Object) 检测原型 

        //检测给定的属性是否能被for in 所枚举出来
        alert(obj.propertyIsEnumerable(‘say‘));
        </script>
    </head>
    <body>
    </body>
</html>
时间: 2024-07-28 21:57:48

js04---object1的相关文章

在Json解析过程中,我为什么用object1.optInt ,和 object1.optString

今天在做Json解析的时候,出现了一段代码没执行的问题,于是找了一下原因: 1.原代码是:   发现 红色的一句 没有执行,查看控制台发现了异常 2.修复bug ,正确的代码为        3.总结    1.我们解析方法getString(“ ”)是因为JSON里面不存在这个value ,会报异常,导致下面的代码不会执行    2.安全起见我一般都是用optString方法,这种方式不会报异常    3.object1.optInt( "id" )   不存在这个value, 返回

js04

1.函数的定义和概念 把一段相对独立的具有特定功能的代码块封装起来,形成一个独立实体,就是函数,起个名字(函数名),在后续开发中可以反复调用 函数的作用: 1.使代码变得清晰简单 2.有利于维护 3.可以提高开发效率 4.提高了代码的重用性 5.可以控制代码的执行时间和执行场景 function 函数名(形参1,形参2......形参n){ // 函数主体 } var 函数名=function(形参1,形参2......形参n){ // 函数主体 } 2.函数的分类  1)有名函数 2)匿名函数

对象序列化和反序列--Hibernate的查询和新增极其相似

Hibernate几个关键字持久化,ORM(关系对象映射)(数据库中关系称作是一张表) 应用在项目中,刘一从写的查询代码,每次都挂掉,想要弄出测试数据,自己想着把查询出来的复杂数据弄到文件里自己要是去造那些复杂数据很麻烦public class Object1 { public static void main(String args[]){ HashMap<String, Object> obj=new HashMap<String,Object>(); obj.put(&quo

Oenstak(M版)控制节点安装

#############修改hosts文件 # controller10.0.0.11 controller# compute110.0.0.31 compute1# block110.0.0.41 block1# object110.0.0.51 object1# object210.0.0.52 object2 #############关闭selinux及防火墙############# systemctl stop firewalldsystemctl disable firewall

一致性hash算法 - consistent hashing

1.背景 我们都知道memcached服务器是不提供分布式功能的,memcached的分布式完全是由客户端来实现的.在部署memcached服务器集群时,我们需要把缓存请求尽可能分散到不同的缓存服务器中,这样可以使得所有的缓存空间都得到利用,而且可以降低单独一台缓存服务器的压力.     最简单的一种实现是,缓存请求时通过计算key的哈希值,取模后映射到不同的memcahed服务器.这种简单的实现在不考虑集群机器动态变化的情况下也是比较有效的一种方案,但是,在分布式集群系统中,简单取模的哈希算法

Winform软件,不要在线程里操作UI

对于Winform软件,不要在线程里操作UI,不要相信:StartForm.CheckForIllegalCrossThreadCalls = false; 于是,把所有的代码都改成主线程委托调用的方式 private delegate void SetTextHandle(string id, string value); private void ThreadSetText(string id, string value) { this.Controls.Find(id, true)[0].

jQuery源代码学习之六——jQuery数据缓存Data

一.jQuery数据缓存基本原理 jQuery数据缓存就两个全局Data对象,data_user以及data_priv; 这两个对象分别用于缓存用户自定义数据和内部数据: 以data_user为例,所有用户自定义数据都被保存在这个对象的cache属性下,cache在此姑且称之为自定义数据缓存: 自定义数据缓存和DOM元素/javascript对象通过id建立关联,id的查找通过DOM元素/javascript元素下挂载的expando属性获得 话不多说,直接上代码.相关思路在代码注释中都有讲解

C# Activator实例化类的一般步骤

2016-01-06 1.获得要创建实例的类的类名 var className = "(命名空间namespace).ClassName"; 2.得到当前类的类型 var classType = Type.GetType(className); 3.创建实例化类的参数数组 var args = new object[] { object1, object2,object 3...}; 4.使用Activator实例化类 var classInstance = Activator.Cre

iOS开发——面试篇&amp;OC基本语法总结(面试)

OC基本语法总结(面试) C和OC对比 OC中主要开发在什么平台上的应用程序? 答:可以使用OC开发Mac OS X平台和iOS平台的应用程序 OC中新增关键字大部分是以什么开头? 答:OC中新增关键字大部分是以@开头 OC中新增加了那些数据类型? 答: Block类型 指针类型(Class, id类型) 空类型 特殊类型(SEL, nil) 面向对象特性是什么? 答:继承性,封装性,多态性 import和#include有什么区别? 答:import 的功能和 include一样, 是将右边的

工作积累(四)——JavaScript深度克隆的实现

JavaScript 中的数据有两种大类,即基本类型和引用类型.因为引用类型使用指针,所以在简单赋值时不能实现克隆,下面介绍两种方法来实现 JavaScript 深度克隆. 1. 原生JavaScript: function clone(former) { if(!(former instanceof Object) ||former === null || (former instanceof RegExp) || (former instanceof Function)) return fo