JavaScript关于对象的一些小知识
javascript的对象
javascriot(之后用js代替)中基本数据类型之一,是复合类型的数据。
对象在js中应用十分广泛,几乎所有的的事物都是做对象,js的对象拥有自己的属性和方法的数据
在js中的对象可以简单的理解成“名称:值“对(name,value)
如何自定义对象
在经典的面向对象语言中,对象是指数据和这些数据上进行的操作的集合。与C++和Java不同,
javaScript是一种原型的编程语言,并没有class语句,而是把函数用作类。
自定义对象的方法
1:通过对象字面(直接)量
var obj={},实质上是一个表达式,这个表达式的每次运算都创建并初始化一个新的对象,每次计算对象字面量的时候,也会计算每个属性的值,也就是说,如果一个重复调用的函数中的循环体内使用对象直接量,它将创建很多新的对象,并且每次创建对象的属性值也有可能不同。
举例:
特别说明:
①:var obj={po:1} var obj={'po':1} var obj={"po":1}这三种情况一样,
②:如果属性名中包括特殊字母,属性名是javascript的保留字之一,属性名以数字开头,这些属性必须防到引号之间。 在ECMAScript5中保留字可以不带引号,但是对于ECMAScript3中引用必须使用引号。在ECMAScript5中对象直接量中的最后一个属性后的逗号将被忽略,在3中大部分实现中也可以忽略这个逗号 ,但再IE中报错。
2:通过new object()创建新的对象
3:通过构造函数创建对象
①: 构造器属性(constructor property)
当我们创建对象的时候,实际上也同时赋予了该对象一种特殊的属性,这种构造器属性实际上是一个指向用于创建该对象的构造器函数引用。
②:instanceof操作符检测一个对象是否由某个指定的构造器函数创建】
注意:使用的时候通过new操作得到对象,用构造器创建对象,构造器函数首字母最好大写,区分一般形式的函数。
4:通过object.create创建对象
JavaScript关于对象的一些小知识的更多相关文章
- javascript实用技巧,js小知识
一.js整数的操作 使用|0和~~可以将浮点转成整型且效率方面要比同类的parseInt,Math.round 要快,在处理像素及动画位移等效果的时候会很有用.性能比较见此. var foo = (1 ...
- JavaScript的局部变量和全局变量小知识
(了解一下,避免初学者犯错,但下面定义全局变量的做法并不推荐,只是让你们知道这是怎么一回事) 如果在函数中使用var定义一个变量,那么这个变量在函数退出后就会被销毁,例如: function test ...
- JavaScript小知识
1.<script>标签的出现使整个页面因脚本解析.运行而出现等待: 2.合并脚本,每个 HTTP请求都会产生额外的性能负担,下载一 个 100KB 的文件比下载四个 25KB的文件要快: ...
- s性能优化方面的小知识
总结的js性能优化方面的小知识 前言 一直在学习javascript,也有看过<犀利开发Jquery内核详解与实践>,对这本书的评价只有两个字犀利,可能是对javascript理解的还不够 ...
- JS的基本类型(小知识)
一:js中的基本类型: 基本类型:boolen, string ,number,null,undefined 引用类型:object,和函数 二.undedifned和null的区别: 1 undef ...
- Jquery:小知识;
Jquery:小知识: jQuery学习笔记(二):this相关问题及选择器 上一节的遗留问题,关于this的相关问题,先来解决一下. this的相关问题 this指代的是什么 这个应该是比较好理 ...
- JavaScript String 对象
JavaScript String 对象 String 对象 String 对象用于处理文本(字符串). String 对象创建方法: new String(). 语法 var txt = new S ...
- JavaScript Date对象 日期获取函数
JavaScript Date对象使用小例子: 运行结果: 总结: 1.尽管我们认为12月是第12个月份,但是JavaScript从0开始计算月份,所以月份11表示12月: 2.nowDate.set ...
- 关于JavaScript中对象的继承实现的学习总结
一.原型链 JavaScript 中原型链是实现继承的主要方法.其主要的思想是利用原型让一个引用类型继承另一个引用类型的属性和方法.实现原型链有一种基本模式,其代码如下. function Super ...
随机推荐
- Java必学MySQL数据库应用场景
Java教程分享Java必学之MySQL数据库应用场景,在当前的后台开发中,MySQL应用非常普遍,企业在选拔Java人才时也会考察求职者诸如性能优化.高可用性.备份.集群.负载均衡.读写分离等问题. ...
- Java @FunctionalInterface注解-6
在学习 Lambda 表达式时,我们提到如果接口中只有一个抽象方法(可以包含多个默认方法或多个 static 方法),那么该接口就是函数式接口.@FunctionalInterface 就是用来指定某 ...
- 重新整理 .net core 实践篇—————仓储层的具体实现[二十七]
前言 简单整理一下仓储层. 正文 在共享层的基础建设类库中: /// <summary> /// 泛型仓储接口 /// </summary> /// <typeparam ...
- Html中的canvas
使用cancas完成袋鼠跳跃的界面,这个是怎么做得呀,我哭了呀
- Android EditText输入框实现下拉且保存最近5个历史记录
文章结构: 一.需求阐述 技术部同事提出想要在APP上保存最近输入成功的5个密钥信息,同时支持可以下拉进行选择. 这也是为了方便客户在现在多次输入信息,帮助其快速进行输入. 二.实现思路: 目前想要实 ...
- Docker减小镜像体积
导航: 这里分为几个部分. 相关转载云原生:米开朗基杨 1.Docker减小镜像体积 2.Docker镜像针对不同语言的精简策略 对于刚接触容器的人来说,他们很容易被自己制作的 Docker 镜像体积 ...
- HDU 4821 2013长春现场赛hash
题意: 一个字符串S 问其中有几个子串能满足以下条件: 1.长度为M*L 2.可以被分成M个L长的小串 每个串都不一样 分析: hash方法,一个种子base,打表出nbase[i]表示base的 ...
- Machine Schedule 赤裸裸的二分匹配 二部图中的点覆盖书==匹配数
Machine Schedule 1 #include <iostream> 2 #include <cstdio> 3 #include <cstring> 4 ...
- kali安装angr
最近打算重新学习一波angr,先把环境搭好 1. 先安装virtualenv,这玩意是可以创建一个纯净的python环境,我陷入了沉思,pyenv好像也可以 这里利用豆瓣的源下载,非常快而且很舒服 p ...
- <jsp:param>传递参数,出现乱码问题
今天在学习<jsp:forward>和<jsp:param>时,用<jsp:param>传递参数时,出现乱码问题,部分代码如下: 1 <jsp:forward ...