JavaScript创建对象的方式小结(4种方式)


Posted in Javascript onDecember 17, 2015

本文实例总结了JavaScript创建对象的方式。分享给大家供大家参考,具体如下:

潜意识里,JavaScript不能算是面向对象的语言,要算也只能说是趋向面向对象的一种语言,至少它不能很好的吻合面向对象最基本的三大特性(继承、封装、多态),当然有很多人就认为JavaScript是面向对象语言,好像也说得没错,因为面向对象也能在JavaScript中实现,比如说继承、封装吧也都可以在JavaScript中实现,但是实现方便吗?所以我觉得很疑惑。看到网上有一网友评价的很好,"面向对象只是一种思想,语言只能说是否很好的支持面向对象的特性。"如果对面向对象有一定的认识,用C也能写出面向对象的程序,javascript也是如此。所以说不能断言说JavaScript是面向对象语言, 呵呵,自认为是菜鸟,不敢妄自断言,还是看看代码:

1. 利用json创建对象

var company = {};
company.name= '华为';
company.address = '北京';
company.produce = function(message)
{
 alert(message);
}

2.使用JavaScript中的Object类型

company= new Object();
company.name= '淘宝';
company.address = '杭州';
company.produce= function(message)
{
 alert(message);
}

3.通过创建函数来生成对象

company = function()
{
  this.name = '新浪';
  this.address = '北京';
  this.produce = function(message)
  {
  alert(message);
  }
}

4.利用浏览器window对象

window.name = '腾讯';
window.address = '北京';
window.produce = function(message)
{
  alert(message);
}

扩展:

1.对象复制

emptyObject = new Object();
company.apply = function(o, c,)
{
  if(o && c && typeof c == 'object')
  {
  for(var p in c)
  {
  o[p] = c[p];
  }
  }
  return o;
};
emptyObject = Ext.apply(emptyObject,company);

2.对象复制(函数方式)

var copyOO = new Function();
copyOO.prototype = company;
var newcopyOO = new copyOO();

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
jquery事件机制扩展插件 jquery鼠标右键事件
Dec 21 Javascript
Textarea与懒惰渲染实现代码
Jan 04 Javascript
escape编码与unescape解码汉字出现乱码的解决方法
Jul 02 Javascript
javascript限制用户只能输汉字中文的方法
Nov 20 Javascript
node.js中的http.response.writeHead方法使用说明
Dec 14 Javascript
jQuery EasyUI 为Combo,Combobox添加清除值功能的实例
Apr 13 jQuery
javascript完美实现给定日期返回上月日期的方法
Jun 15 Javascript
React-Native左右联动List的示例代码
Sep 21 Javascript
element-ui中的select下拉列表设置默认值方法
Aug 24 Javascript
详解使用webpack+electron+reactJs开发windows桌面应用
Feb 01 Javascript
详解微信小程序之提高应用速度小技巧
Jan 07 Javascript
node.js文件的复制、创建文件夹等相关操作
Feb 05 Javascript
javascript日期格式化方法小结
Dec 17 #Javascript
javascript中Date format(js日期格式化)方法小结
Dec 17 #Javascript
js实现下拉列表选中某个值的方法(3种方法)
Dec 17 #Javascript
详解js图片轮播效果实现原理
Dec 17 #Javascript
js和jquery分别验证单选框、复选框、下拉框
Dec 17 #Javascript
jQuery+CSS实现滑动的标签分栏切换效果
Dec 17 #Javascript
JS禁用页面上所有控件的实现方法(附demo源码下载)
Dec 17 #Javascript
You might like
使用网络地址转换实现多服务器负载均衡
2006/10/09 PHP
php如何解决无法上传大于8M的文件问题
2014/03/10 PHP
php之Smarty模板使用方法示例详解
2014/07/08 PHP
3款值得推荐的微信开发开源框架
2014/10/28 PHP
php版阿里云OSS图片上传类详解
2016/12/01 PHP
javaScript call 函数的用法说明
2010/04/09 Javascript
跨浏览器开发经验总结(四) 怎么写入剪贴板
2010/05/13 Javascript
jquery validate poshytip 自定义样式
2012/11/26 Javascript
JavaScript子窗口ModalDialog中操作父窗口对像
2012/12/11 Javascript
用按钮控制iframe显示的网页实现方法
2013/02/04 Javascript
JS正则验证邮箱的格式详细介绍
2013/11/19 Javascript
Nodejs如何搭建Web服务器
2016/03/28 NodeJs
JS提示:Uncaught SyntaxError: Unexpected token ILLEGAL错误的解决方法
2016/08/19 Javascript
jQuery zTree树插件简单使用教程
2017/01/10 Javascript
bootstrap IE8 兼容性处理
2017/03/22 Javascript
es7学习教程之fetch解决异步嵌套问题的方法示例
2017/07/21 Javascript
详解vue的diff算法原理
2018/05/20 Javascript
Vue递归实现树形菜单方法实例
2018/11/06 Javascript
Vue入门之数量加减运算操作示例
2018/12/11 Javascript
Nuxt.js实战和配置详解
2019/08/05 Javascript
在Koa.js中实现文件上传的接口功能
2019/10/08 Javascript
[02:48]DOTA2英雄基础教程 暗夜魔王
2013/12/12 DOTA
给Python初学者的一些编程技巧
2015/04/03 Python
Python3.6实现带有简单界面的有道翻译小程序
2019/04/16 Python
使用pygame写一个古诗词填空通关游戏
2019/12/03 Python
python重要函数eval多种用法解析
2020/01/14 Python
Python getsizeof()和getsize()区分详解
2020/11/20 Python
测绘工程本科生求职信
2013/10/10 职场文书
大班开学家长寄语
2014/04/04 职场文书
校园安全演讲稿
2014/05/09 职场文书
安全生产承诺书范文
2014/05/22 职场文书
课程设计的心得体会
2014/09/03 职场文书
学期个人工作总结
2015/02/13 职场文书
VS2019连接MySQL数据库的过程及常见问题总结
2021/11/27 MySQL
vmware虚拟机打不开vmx文件怎么办 ?vmware虚拟机vmx文件打开方法
2022/04/08 数码科技
Android Studio 计算器开发
2022/05/20 Java/Android