Javascript 循环遍历对象文字
Javascript Loop through Object Literal
我想遍历以下内容并输出一个组合不同设置的字符串:
循环遍历这个:
config : {
settings : {
width: 880,
height: 495,
byline: false,
title: false,
portrait: false
}
}
并输出:
var output = '&height=495&width=880&title=false&byline=false&portrait=false',
我该怎么做?
我不知道
你是否明确想要循环,但你可以简单地使用 jQuery.param
:
var output = "&" + $.param(obj.config.settings);
// I assumed `obj` contains `config`
顺序可能不同,但对于无关紧要的查询字符串。
var attr, val, settings = config.settings,
output, count = 0;
if ('undefined' !== typeof settings) {
for (attr in settings) {
val = settings[attr];
if (0 === count) {
output = output + val;
} else {
output = output + '&' + val;
}
count += 1;
}
console.log(output);
}
请注意,上面的代码添加了优化,其中您不会向第一个 var 添加&
。我认为您不希望在 get var 字符串中使用它。如果这样做,只需从 if
else
结束更改为 output = output + val;
即可。
这个怎么样:
function print( obj ) {
return Object.keys( obj ).map( function ( name ) {
return '&' + name + '=' + obj[ name ];
}).join( '' );
}
用法:
var output = print( obj.config.settings );
现场演示:http://jsfiddle.net/w3D9M/
相关文章:
- 是否可以将字符串转换为文字对象数组
- jQuery:如何使用文字对象方法中的方法来获取全局变量
- 如何检查文字对象是否在 Javascript 数组中
- Javascript解析序列化的Groovy映射到JS文字对象
- asp.net 文字对象传递给 JavaScript
- 文字对象和jquery选择器DRY
- 将文字/对象/类传递给具有数千次调用的函数的内存含义
- Javascript 文字对象和单例模式
- 如何在 PHP 中将 JavaScript 文字对象转换为 Json 对象
- 将文字对象转换为对象'的属性
- 文字对象中的元素
- 将开关大小写(在c++中)替换为javascript中的文字对象
- 使用函数式编程过滤文字对象
- 关于文字对象,也许还有自动执行函数
- 如何访问“参数”来自闭包的外部函数的文字对象
- 关于文字对象语法的限制
- 在文字对象中创建属性
- JavaScript异步调用文字对象函数
- 文字对象和函数构造函数
- 奇怪的行为和使用Object的多个实例.在文字对象上创建