对象的创建方法

  • {}
var obj = {} 

  • 系统自带的构造函数
var obj = new Object()//Array()//Number()

  • 自定义的构造函数
function Person(){}
var person1 = new Person()

注:构造函数:大驼峰命名规则 TheFirstName 

       普通函数:小驼峰命名规则  theFirstName

构造函数内部原理(必须加New)

  • 在函数体最前面隐式的加上this={}
  • 执行this.xxx=xxx
  • 隐式的返回this
function Person(name,age){//var this={}; 隐式this.name=name;this.age=age;//return this隐式
}
var person1 = new Person("zhangsan",18)

注:构造函数显示返回对象,则返回对象

       构造函数返回原始值,则不受影响,继续返回this

包装类

  • new String()
  • new Boolean()
  • new Number()

包装类之后就有属性和方法了,原始值没有属性和方法

var num =4;//new Number(3).len=3; 销毁num.len=3;//new Number(3).len=3; 销毁
console.log(num.len);

以上过程原始值可以访问属性。经历了隐式的包装类,每次包装完 销毁。

注:undefined和null不可以设置属性值

例1:

// var str = "abcd";
// str.length=2;
// new string("abcd").length=2 销毁
// console.log(str)//abcd

例2:

var str = "abc";str += 1;
var test = typeof (str);if (test.length == 6) {test.sign = "typeof的返回结果";
}
console.log(test.sign); //undefinde

typeof返回string字符串

---恢复内容结束---

对象的创建方法

  • {}
var obj = {} 

  • 系统自带的构造函数
var obj = new Object()//Array()//Number()

  • 自定义的构造函数
function Person(){}
var person1 = new Person()

注:构造函数:大驼峰命名规则 TheFirstName 

       普通函数:小驼峰命名规则  theFirstName

构造函数内部原理(必须加New)

  • 在函数体最前面隐式的加上this={}
  • 执行this.xxx=xxx
  • 隐式的返回this
function Person(name,age){//var this={}; 隐式this.name=name;this.age=age;//return this隐式
}
var person1 = new Person("zhangsan",18)

注:构造函数显示返回对象,则返回对象

       构造函数返回原始值,则不受影响,继续返回this

包装类

  • new String()
  • new Boolean()
  • new Number()

包装类之后就有属性和方法了,原始值没有属性和方法

var num =4;//new Number(3).len=3; 销毁num.len=3;//new Number(3).len=3; 销毁
console.log(num.len);

以上过程原始值可以访问属性。经历了隐式的包装类,每次包装完 销毁。

注:undefined和null不可以设置属性值

例1:

// var str = "abcd";
// str.length=2;
// new string("abcd").length=2 销毁
// console.log(str)//abcd

例2:

var str = "abc";str += 1;
var test = typeof (str);if (test.length == 6) {test.sign = "typeof的返回结果";
}
console.log(test.sign); //undefinde

typeof返回string字符串

转载于:https://www.cnblogs.com/FashionDoo/p/10525761.html

JavaScript 对象和包装类相关推荐

  1. JavaScript 对象超细致总结

    目录 一.什么是对象? 二.对象的创建(3种方法) 三.给对象添加修改数据. JS遍历对象 概述 剥开Object的"伪装" 常用遍历方法 for..in..遍历 Object.k ...

  2. 如何获取HTML元素对应JavaScript对象?

    <!DOCTYPE html> <html><head><meta charset="UTF-8"><title>< ...

  3. JavaScript对象,方括号和算法

    by Dmitri Grabov 德米特里·格拉波夫(Dmitri Grabov) JavaScript对象,方括号和算法 (JavaScript Objects, Square Brackets a ...

  4. 我对javascript对象的理解

    前言 JavaScript这门语言除了基本类型都是对象,可以说JavaScript核心就是对象,因此理解JavaScript对象及其种种特性至关重要,这是内功.本文介绍了我对es5对象,原型, 原型链 ...

  5. 《JavaScript启示录》——1.21 JavaScript对象和Object()对象

    本节书摘来自异步社区<JavaScript启示录>一书中的第1章,第1.21节,作者:[美]Cody Lindley著,更多章节内容可以访问云栖社区"异步社区"公众号查 ...

  6. 《JavaScript启示录》——第1章 JavaScript对象 1.1创建对象

    本节书摘来自异步社区<JavaScript启示录>一书中的第1章,第1.1节,作者:[美]Cody Lindley著,更多章节内容可以访问云栖社区"异步社区"公众号查看 ...

  7. 如何通过其值获取JavaScript对象中的键?

    本文翻译自:How to get a key in a JavaScript object by its value? I have a quite simple JavaScript object, ...

  8. 如何从JavaScript对象中删除项目[重复]

    本文翻译自:How to remove item from a JavaScript object [duplicate] Possible Duplicate: 可能重复: How to remov ...

  9. 如何遍历JavaScript对象?

    本文翻译自:How to iterate over a JavaScript object? I have an object in JavaScript: 我在JavaScript中有一个对象: { ...

最新文章

  1. jQuery UI 之 LigerUI 快速入门
  2. 图像凸集投影法_论文分享|数字投影结构光三维测量方法研究
  3. map python2 python3 兼容_windows下 兼容Python2和Python3的解决方法
  4. vs2008 error LNK2019: 无法解析的外部符号总结
  5. JSTL标签显示分页
  6. for循环insert怎么效率高_循环结构就这么简单,你还不会吗?
  7. 客户端请求时间和服务端处理时间不匹配问题
  8. JetBrain补丁
  9. Web课程设计-仿当当网-增删改查-java+jsp+mysql-期末大作业
  10. Python OpenCV3 计算机视觉秘籍:1~5
  11. 中国互联网CEO语录
  12. Linux 的磁盘挂载 | 详解
  13. BANDGAP VOLTAGE REFERENCE 带隙电压基准的问题
  14. JavaScript设计模式有哪些?
  15. LayIM 3.9.1与ASP.NET SignalR实现Web聊天室快速入门(五)之使用RabbitMQ缓存消息
  16. 前端框架Vue中各个文件夹的具体作用简介
  17. Revit命令名称与命令ID
  18. UGF游戏框架实例开发教程—FlappyBird(七)子弹发射与小鸟飞行功能的实现
  19. CPU缓存L1,L2和L3是什么?如何工作?
  20. 4位递增计数器的设计(详解并附有代码)

热门文章

  1. linux_bash_shell_cheat_sheet(自译)
  2. 华为机试题【10】-求数字基root
  3. 在VS2010开发的MVC3 应用程序中设定默认的浏览器
  4. 第一次使用 Blog
  5. 函数中的apply,call入门介绍
  6. 有前途的人工智能大数据分析相关职业:Python数据科学入门之路
  7. 机器学习之朴素贝叶斯法
  8. Hive谓词解析过程分析
  9. 创建新的swap文件
  10. SRV记录注册不成功的可能的原因