返回一个重复任意次数的字符串的最佳或最简洁的方法是什么?
以下是我迄今为止的最佳镜头:
function repeat(s, n){
var a = [];
while(a.length < n){
a.push(s);
}
return a.join('');
}
Run Code Online (Sandbox Code Playgroud) 可能重复:
迭代对象文字值
我在JavaScript中有对象:
var object = someobject;
Object { aaa=true, bbb=true, ccc=true }
Run Code Online (Sandbox Code Playgroud)
我怎么能用它呢?
object.each(function(index, value)) {
console.log(value);
}
Run Code Online (Sandbox Code Playgroud)
不工作.
我有一个对象options:options = {title : 'title1', name : 'name1', url : 'url1', etc.}
它作为参数传递给函数.我正在尝试迭代该对象,将其传递给另一个函数evaluate,并将结果存储在另一个对象中opts,如下所示:
var opts = new Object();
$.each(options, function(key,value){
opts.key = evaluate(element, value);
});
Run Code Online (Sandbox Code Playgroud)
该evaluate(element,value)精品工程,但问题是,opts最终看起来像:
{key : eval(element,url1)}
Run Code Online (Sandbox Code Playgroud)
代替
{title : eval(element,title1), name : eval(element,name1), etc.}
Run Code Online (Sandbox Code Playgroud)
也就是说,key从字面上传递而不是被评估,并且使用最后一个属性覆盖每次迭代options.
我的作业行中是否有正确的语法?我也尝试过:
opts = {key : eval(element,val)}
Run Code Online (Sandbox Code Playgroud)
这给出了与上述相同的结果.我也可以将对象转换为$.each迭代中的数组.我尝试了几种方法,但也没有成功.如果有人能告诉我这条路线,那也很棒.
(这是一个jQuery插件,我在Firefox中使用Firebug进行测试).
在此先感谢您的帮助.
我有一个变量,当打印到控制台时,它看起来像这样:
Object { PK-34={...}, PK-35={...}}
Run Code Online (Sandbox Code Playgroud)
我正在为这个变量添加一个size方法:
Model_value.size = function(obj) {
var size = 0, key;
for (key in obj) {
if (obj.hasOwnProperty(key)) size++;
}
return size;
};
Run Code Online (Sandbox Code Playgroud)
此方法返回0,并使用以下方法迭代这些属性:
for (foo in Model_value)
{
//...
}
Run Code Online (Sandbox Code Playgroud)
不起作用.
我如何迭代那些PK-34,PK-35属性?
我有这个对象:
var navArray = {
'#item1' : 0,
'#item2' : 1,
'#item3' : 2,
'#item4' : 3,
'#item5' : 4,
'#item6' : 5
}
Run Code Online (Sandbox Code Playgroud)
下面代码中的ident var是一个数字,我需要找出它在数组中对应的属性...所以如果ident为1我想得到#item2返回..
我该怎么做呢?
var navArray = {
'#item1' : 0,
'#item2' : 1,
'#item3' : 2,
'#item4' : 3,
'#item5' : 4,
'#item6' : 5
}
if(typeof(ident) === "number") {
for(i in navArray) {
}
}
Run Code Online (Sandbox Code Playgroud)