JavaScript 对象属性
JavaScript 对象属性
- 属性中的 . 和 [ ](点 和 方括号)的区别
. :取对象自身的属性值;
[ ]:括号内容可以是变量;
var obj = {};
obj.name = 'Twx';
var nameA = 'name';
// 使用
obj['name'] = 'Twx'; 等价于 obj[nameA] = 'Twx';
- 属性的删除
delete obj.name; // delete obj['name'];
- 属性的检测(判断属性是否属于对象)
1. in 运算符
'name' in obj = true; => 结果是 布尔 类型
2. hasOwnProperty([变量名称])
1 hasOwnProperty('name') = true; => 结果是 布尔 类型
3. != undefined (未定义)
1 obj.name != undefined => true; // 结果是 布尔 类型
- 枚举属性(for in 遍历)
1. for in 遍历中,对象 遍历出的是 key 值
var obj = {x:1,y:2,z:3};
for(a in obj){
a; //x,y,z key 值
obj[a]; //1,2,3 value 值
}
2. for in 遍历中,数组 遍历出的是 索引 值
var arr = [{x:1},{y:2},{z:3}];
for(a in arr){
a; //0,1,2 数组的索引值
}
3. 数组另两种遍历方式
3.1 for(var i = 0;i < 10;i++){ ... }
for(var i = 0;i < 10; i++){
...
// 同步执行
}
3.2 $.each(arr, function(index【索引】,item【值】){ ... })
$.each(arr, function(index【索引】,item【值】){
...
// 异步执行
});
4. 序列化
浅拷贝 只是复制了对象的引用地址,两个对象指向同一个内存地址,所以修改其中任意的值,另一个值都会随之变化,这就是浅拷贝(例:assign())
深拷贝 是将对象及值复制过来,两个对象修改其中任意的值另一个值不会改变,这就是深拷贝(例:JSON.parse()和JSON.stringify(),但是此方法无法复制函数类型)
// 深拷贝案例
var obj = {x:1,y:2,z:3};
JSON.stringify(obj); //string {'x':1,'y':2,'z':3};
typeof(JSON.stringify(obj)); //string
var str = JSON.stringify(obj);
JSON.parse(str); // object
5. ajax 传参 数据方式
var data = {
'name':_name,
'age':_age,
...
}
// ajax
data:{dataJson:JSON.stringify(data)} // 传参
JavaScript 对象属性的更多相关文章
- 删除要被替换的元素的所有事件处理 程序和 JavaScript 对象属性
使用本节介绍的方法替换子节点可能会导致浏览器的内存占用问题,尤其是在 IE 中,问题更加明显.在删除带有事件处理程序或引用了其他 JavaScript 对象子树时,就有可能导致内存占用问题.假设 某个 ...
- Javascript对象属性与方法汇总
Javascript对象属性与方法汇总 发布时间:2015-03-06 编辑:www.jquerycn.cn 详细介绍下,javascript对象属性与对象方法的相关知识,包括javascript字符 ...
- JavaScript对象属性的基础教程指南
JavaScript是使用“对象化编程”的,或者叫“面向对象编程”的.所谓“对象化编程”,意思是把JavaScript能涉及的范围划分成大大小小的对象,对象下面还继续划分对象直至非常详细为止,所有的编 ...
- JavaScript对象属性访问的两种方式
JavaScript对象属性访问的两种方式 object.attribute object["attribute"] 例如: var employees = [ { "f ...
- js 技巧 (六)JavaScript[对象.属性]集锦
JavaScript[对象.属性]集锦 SCRIPT 标记 用于包含javascript代码. 语法 属性 LANGUAGE 定义脚本语言 SRC 定义一个URL用以指定以.JS结尾的文件 windo ...
- javascript对象属性和数组的访问
javascript对象属性的访问 假如有对象test:var test = { "a":1, "b":2};直接访问对象test的属性a的值,有两种方法: ...
- 了解JavaScript 对象属性的标签
对象属性的标签 value(属性值), writable(属性可写), enumerable(属性可枚举), configurable(属性可配置), 这些属性标签使对象所持有的属性体现出不同的特性, ...
- JavaScript对象属性(一)
对象object 对象和数组很相似,数组是通过索引来访问和修改数据,对象是通过属性来访问和修改数据的. 这是一个示例对象: var cat = { "name": "W ...
- JavaScript对象属性 constructor
对象属性 constructor 属性返回对创建此对象的数组函数的引用; constructor(构造函数) 在对象创建或实例化时候被调用的方法.通常使用该方法来初始化数据成员和所需资源.构造函数不 ...
随机推荐
- CentOS 上使用vscode 调试百度大数据分析框架Apache Doris BE
A: 前期准备工作 1. 安装vscode,详细请参见vscode官网https://code.visualstudio.com/docs/setup/linux,摘要如下: sudo rpm --i ...
- 529. Minesweeper
▶ 扫雷的扩展判定.已知棋盘上所有点的情况(雷区 'M',已翻开空白区 'B',未翻开空白区 'E',数字区 '1' ~ '8'),现在给定一个点击位置(一定在空白区域),若命中雷区则将被命中的 M ...
- 「小程序JAVA实战」小程序的关注功能(65)
转自:https://idig8.com/2018/09/24/xiaochengxujavashizhanxiaochengxudeguanzhugongneng64/ 在个人页面,根据发布者个人和 ...
- 带参数setTimeout
/* 功能:修改 window.setTimeout,使之可以传递参数和对象参数 使用方法: window.setTimeout(回调函数,时间,参数1,,参数n) ...
- 迷你MVVM框架 avalonjs 0.94发布
本版本主要做了如下改进: 优化ms-if的逻辑,现在描述DOM的顺序是 ms-skip, ms-important, ms-controller, ms-if ... 只要元素存在ms-skip 这个 ...
- 分区恢复和NTFS文件恢复试验
一.实验室名称:主楼实验室A2-412 二.实验项目名称:分区恢复和NTFS文件恢复试验 三.实验学时:6学时 四.实验原理: 借助fdisk.diskgen软件对磁 ...
- set 续2
--------siwuxie095 用 set 命令进行字符串处理(这个不应只属于 set 的内容,应该归属于格式内容, 在没有 set 的情况下,格式仍旧适用) ...
- md5,原理待续
以前项目中copy出来的 import java.security.MessageDigest; public class MD5Util { /** * @todo MD5加码 生成32位md5码 ...
- Elk+redis的配置
1.先到网站上下载 https://www.elastic.co/cn/downloads,需要的工具 Elasticsearch,Kibana,Logstash,Filebeat. 先把redis安 ...
- cnblog博客管理
http://www.cnblogs.com/wc1903036673/ 12436109 https://www.cnb ...