JS中对象基本使用

        <script type="application/javascript" charset="utf-8">//Objcet 所有类的基础类/*** 创建对象方式一*/
//          var obj=new Objcet();/** 创建对象方式二,注意 '{}'不可忘记写* */var obj = {};obj.name = "什码情况";obj.age = 20;obj.sex = "男";obj.introduction = "我是IT男!!!";obj.say = function(){console.log("哈喽,程序猿真好!");}obj.eat =  function(){console.log("吃饭中。。。。");}console.log("我叫:"+obj.name);obj.say();/*** delete :该操作符用于删除对象的属性或方法*/console.log("删除前obj.age: "+obj.age);delete obj.age;console.log("删除后obj.age: "+obj.age);console.log("删除前obj.eat: "+obj.eat);delete obj.eat;console.log("删除后obj.eat: "+obj.eat);/*** for ... in 遍历对象的属性*/console.log("for..in 开始遍历对象...");for(var attr in obj){console.log("obj["+attr+"] : "+obj[attr]);}console.log("for..in 结束遍历对象...");/*** constructor: 保存对象的创建函数* hasOwnProperty(PropertyName):检测给定的属性在当前实例对象中(而不是原形中)是否存在* isPrototypeOf(Object):检测原型* propertyIsEnumerable(propertyName):检查对象的propertyName属性是否能被枚举(即可以使用:for..in..遍历)* toLocaleString():返回对象的字符串表示。该字符串与执行环境的地区对应。* toString():返回对象的字符串表示。* valueOf():返回对象的字符串、数值或布尔表示。*/console.log("obj.constructor: "+obj.constructor);console.log("obj.hasOwnProperty('age'): "+obj.hasOwnProperty("age"));console.log("obj.hasOwnProperty('sex'): "+obj.hasOwnProperty("sex"));console.log("obj.propertyIsEnumerable('sex'): "+obj.propertyIsEnumerable("sex"));console.log("obj.valueOf(): "+obj.valueOf());/********************* 【开始】运行结果 ********************我叫:我叫:什码情况哈喽,程序猿真好!删除前obj.age: 20删除后obj.age: undefined删除前obj.eat: function (){console.log("吃饭中。。。。");}删除后obj.eat: undefinedfor..in 开始遍历对象...obj[name] : 什码情况obj[sex] : 男obj[introduction] : 我是IT男!!!obj[say] : function (){console.log("哈喽,程序猿真好!");}for..in 结束遍历对象...obj.constructor: function Object() {[native code]}obj.hasOwnProperty('age'): falseobj.hasOwnProperty('sex'): trueobj.propertyIsEnumerable('sex'): trueobj.valueOf(): [object Object]********************* 【结束】运行结果 ********************/</script>

Example 1: JS 实现Map对象

        <script type="text/javascript" charset="utf-8">function Map(){//空的对象容器,承载键值对//注意对象要使用{}来声明,否则报语法错误var obj={};   this.size=function(){var count=0;for(var item in obj){count++;}return count;};this.put=function(key,value){obj[key]=value;}this.get=function(key){return obj[key];}this.remove=function(key){delete obj[key];}this.eachMap=function(fu){for(var key in obj){fu(key,obj[key]);}}}var m=new Map();m.put('01','abc');m.put('02',true);m.put('03',123);m.put('04',456);m.put('05',false);m.put('06',null);m.put('07',0);m.put('08',undefined);console.log("m.size(): "+m.size());console.log("m.get('03'): "+m.get('03'));console.log("m.remove('03'): "+m.remove('03'));console.log("m.get('03'): "+m.get('03'));console.log("m.get('06'): "+m.get('06'));console.log("m.get('08'): "+m.get('08'));m.eachMap(function(key,value){console.log("eachMap: "+key+" , "+value);});/********************* 【开始】运行结果 ********************m.size(): 8m.get('03'): 123m.remove('03'): undefinedm.get('03'): undefinedm.get('06'): nullm.get('08'): undefinedeachMap: 01 , abceachMap: 02 , trueeachMap: 04 , 456eachMap: 05 , falseeachMap: 06 , nulleachMap: 07 , 0eachMap: 08 , undefined            ********************* 【结束】运行结果 ********************/           </script>

Example 2: JS 删除数组中重复的元素

        <script type="text/javascript" charset="utf-8">// js对象特性:在js对象中key是永远不重复的function toObject(array){var obj={};for(var index in array){obj[array[index]]=true;}return obj;}function keys(obj){var arr=[];    //私有对象for(var attr in obj){if(obj.hasOwnProperty(attr)){    //查看attr属性是否是Obj实例对象的属性arr.push(attr);}else{console.log(arr+" ,不是当前实例对象的属性!");}}return arr;}var arr=[2,4,2,6,7,2,5,9,90,5];function uniq(arr){return keys(toObject(arr))}console.log(uniq(arr));/********************* 【开始】运行结果 ********************["2", "4", "5", "6", "7", "9", "90"]********************* 【结束】运行结果 ********************/               </script>

JavaScript学习随记——对象相关推荐

  1. JavaScript学习笔记:对象

    JavaScript学习笔记:对象 1.声明对象 (1)字面量对象 <!DOCTYPE html> <html lang="en"> <head> ...

  2. JavaScript学习笔记之对象及继承

    JavaScript学习笔记之对象及继承 对象属性 ES5中有两种属性,数据属性和访问器属性. 数据属性包括[[writable]](能否修改属性的值).[[value]]等等: 访问器属性包括[[C ...

  3. JavaScript学习随记——常见全局对象属性及方法

    <script type="text/javascript" charset="utf-8">//全局对象: Object.Array.Math等/ ...

  4. JavaScript学习笔记——BOM_window对象

    javascript浏览器对象模型-windwo对象 BOM Browser Object Model window对象 是BOM中所有对象的核心. 一.属性 1.(位置类型-获得浏览器的位置) IE ...

  5. 小汤学编程之JavaScript学习day04——自定义对象、原型与原型链、BOM

    一.自定义对象 1.对象的定义     2.对象的使用 二.原型与原型链 1.JS的继承结构图     2.关键点 三.BOM 1.window对象     2.document对象     3.lo ...

  6. JavaScript学习笔记-JSON对象

    JSON 是一种用来序列化对象.数组.数值.字符串.布尔值和 null 的语法.它基于 JavaScript 语法,但是又有区别:一些 JavaScript 值不是 JSON,而某些 JSON 不是 ...

  7. JavaScript学习随记——面向对象编程(继承)

    @Example:基于原型链的继承 <!DOCTYPE HTML> <html><head><meta http-equiv="Content-Ty ...

  8. JavaScript学习随记——错误类型

    错误类型: 执行代码期间可能会发生的错误有多种类型.每种错误都有对应的错误类型,而当错误发生时,就会抛出相应类型的错误对象. ECMA-262定义的7种错误类型 Error: 是错误的基类型,其他错误 ...

  9. JavaScript学习随记——属性类型

    <!DOCTYPE HTML> <html><head><meta http-equiv="Content-Type" content=& ...

最新文章

  1. 关于ListView中adapter调用notifyDataSetChanged无效的原因
  2. 学Android开发 这19个开发工具助你顺风顺水
  3. php屏蔽行,PHP屏蔽过滤指定关键字的方法
  4. PHP获取当前页面的网址
  5. Android对话框dialog大全(代码直接可用)
  6. 第三次学JAVA再学不好就吃翔(part27)--自定义工具类
  7. mysql 备份 php_PHP备份/还原MySQL数据库的代码
  8. Spring Boot集成ShedLock分布式定时任务实例
  9. jdk安装与调试笔记 20200202
  10. 线程同步--事件内核对象
  11. 归心似箭,IT达人分享抢票攻略
  12. 资深架构师手写教你使用Docker安装RabbitMQ(SpringCloud)
  13. cocos2dx 3.0 触摸机制
  14. 最近面试有感,不要耍小聪明,面试官都是开了上帝视角的
  15. 描述cookie,sessionstroage,localstrage的区别
  16. java面试问项目中遇到的问题,涨知识
  17. 计算机视觉不规则roi原理,C++ 中利用 Opencv 得到不规则的ROI 区域(已知不规则区域)...
  18. Bloodsucker ZOJ - 3551
  19. 八段数码管数字显示实验c语言,实验报告__实验七_八段数码管显示实验
  20. 计算机word基础操作知识,word文档基本操作

热门文章

  1. oracle 中增加行,Oracle中实现FORM表单插入、锁定、更新行、删除行的包
  2. gin 生成api文档_gin-swagger 生成RESTful风格OpenAPI文档
  3. component是什么接口_阿里高级技术专家:整洁的应用架构“长”什么样?
  4. java 7.0 特性_JDK7.0语法新特性
  5. uniapp无法使用substr_关公战秦琼------Excel、SPSS Modler和R的使用对比(下)
  6. html模块殃射,【Web前端问题】webpack打包后,module模块中的函数无法在html标签的事件中调用?...
  7. 流程图伪代码计算机语言,流程图与伪代码 PPT课件
  8. CSS3的常用属性(一)
  9. 给你的博客换个装-园子换装指南
  10. Tomcat-部署多个项目(不同端口)