js备忘录4
for (var key in obj)
{
console.log('对象属性名:' , key);
if (obj[key] instanceof Object) {
sayName(obj[key]);
}
}
遍历对象的方法
for (var i = 0; i < obj.length; ++i)
{
console.log('对象属性名:' , i);
if (obj[i] instanceof Object) {
sayName(obj[i]);
}
}
遍历数组的方法
JSON是什么?JSON是JS的一种简单数据格式,JSON是JavaScript原生格式,它是一种严格的js对象的格式,JSON的属性名必须有双引号,如果值是字符串,也必须是双引号
值为数组就不用加双引号,key必须加双引号
JSON 是 JavaScript 原生格式,这意味着在JavaScript 中处理 JSON 数据不需要任何特殊的 API 或工具包。
var
obj2={};
//这只是JS对象
var
obj3={width:100,height:200};
/*这跟JSON就更不沾边了,只是JS的 对象 */
var
obj4={
'width'
:100,
'height'
:200};
/*这跟JSON就更不沾边了,只是JS的对象 */
var
obj5={
"width"
:100,
"height"
:200,
"name"
:
"rose"
};
/*我们可以把这个称做:JSON格式的JavaScript对象 */
var
str1=
'{"width":100,"height":200,"name":"rose"}'
;
/*我们可以把这个称做:JSON格式的字符串 */
var
a=[
{
"width"
:100,
"height"
:200,
"name"
:
"rose"
},
{
"width"
:100,
"height"
:200,
"name"
:
"rose"
},
{
"width"
:100,
"height"
:200,
"name"
:
"rose"
},
];
/*这个叫JSON格式的数组,是JSON的稍复杂一点的形式 */
var
str2=
'['
+
'{"width":100,"height":200,"name":"rose"},'
+
'{"width":100,"height":200,"name":"rose"},'
+
'{"width":100,"height":200,"name":"rose"},'
+
']'
;
/* 这个叫稍复杂一点的JSON格式的字符串 */

为什么js可以通过object['property'] 访问值呢?是应为js都是关联数组,不是java那种纯粹的数组
数组并不用设置长度,这个和java有些不一样
删除数组的一个元素不会导致修改length的属性,只会变成稀疏数组
java 中遍历删除List一般使用迭代器删除,无论用for循环还是增强for循环都是会有问题的
原文链接: http://blog.csdn.net/superxlcr/article/details/51534428
将函数f()加到M方法中,然后调用:o.M() 就调用了函数
也可以这样:o["M"](X,Y)
因为函数的执行用到了作用域链,作用域链是在函数的定义的时候就创建了,这种层次关系在创建的时候已经确定了下来
,所以无论什么时候调用,结果都是返回local scope
js备忘录4的更多相关文章
- js备忘录模式
备忘录(Memento):在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态.这样以后就可将该对象恢复到原先保存的状态. 备忘录模式比较适用于功能比较复杂的,但需要维护或记录属性 ...
- js备忘录_2
JS函数的参数在function内可以用arguments对象来获取. 转化为数组:var arr=Array.prototype.slice.call(arguments,0); Array有两个: ...
- js备忘录_1
js没有重载,只有同名覆盖,参数任意 所有参数封装在arguments数组中 Uncaught ReferenceError: d is not defined js引擎会当做变量处理 functio ...
- js备忘录5
函数的全解析 原文链接: http://mp.weixin.qq.com/s?src=11×tamp=1509672643&ver=491&signature=9fD ...
- js备忘录3
JavaScript也有类型转换 js中的获取指定位数的方法 +和-的转换方向不同 在JavaScript中首先给变量赋值数字,然后再给变量赋值字符串是合法的 这点和Java有些区别 在函数体内声明变 ...
- js备忘录2
JavaScript 的类型分为两类,分别是原始类型和对象类型 其中原始类型中只有数字.字符串和布尔型,和java中的有些不一样 null和undefined不是基本数据类型中的某一种 对象是prop ...
- JS备忘录
/** *删除数组指定下标或指定对象 */ Array.prototype.remove = function (obj) { for (var i = 0; i < this.length; ...
- js备忘录6
- js备忘录1
新建对象 赋值和取值操作 var book={ topic:"JavaScript", fat: true }; book.topic 通过点访问 book["fat& ...
随机推荐
- Python基础-画图:matplotlib
Python画图主要用到matplotlib这个库.具体来说是pylab和pyplot这两个子库.这两个库可以满足基本的画图需求. pylab神器:pylab.rcParams.update(para ...
- PAT02-线性结构3 Reversing Linked List
题目:https://pintia.cn/problem-sets/1010070491934568448/problems/1037889290772254722 先是看了牛客(https://ww ...
- Spring事务(三)事务增强器
摘要: 本文结合<Spring源码深度解析>来分析Spring 5.0.6版本的源代码.若有描述错误之处,欢迎指正. 目录 一.创建事务 1. 获取事务 2. 处理已经存在的事务 3. 准 ...
- MySQL(四)执行计划
转载自:Oo若离oO,原文链接 在MySQL中使用explain查询SQL的执行计划 目录 一.什么是执行计划 二.如何分析执行计划 一.什么是执行计划 要对执行计划有个比较好的理解,需要先对MySQ ...
- UCOSii和Linux的区别和联系
UCOSii和Linux的区别和联系 想通过UCOSii来理解Linux的系统架构,故参考一些资料,简单整理了一下UCOSii和Linux的区别和联系,以此来更好的学习Linux. 其具体对比如下: ...
- UVA - 11927 Games Are Important (SG)
Description Games Are Important One of the primary hobbies (and research topics!) among Computing ...
- 【Git】Git Bash
版本控制工具Git Bash软件 安装 git.exe 即可
- 多线程Java Socket编程示例
package org.merit.test.socket; import java.io.BufferedReader; import java.io.IOException; import jav ...
- 20155321 《信息安全系统设计》课堂测试(ch06)
20155321 <信息安全系统设计>课堂测试(ch06) (单选题|1分)下面代码中,对数组x填充后,采用直接映射高速缓存,所有对x和y引用的命中率为() A .1 B .1/4 C . ...
- PHP 注释规范
注释在写代码的过程中非常重要,好的注释能让你的代码读起来更轻松,在写代码的时候一定要注意注释的规范. php里面常见的几种注释方式: 1.文件头的注释,介绍文件名,功能以及作者版本号等信息 /** * ...