如何仅从Ember js项目中的str.split()获取原始值

时间:2014-03-14 00:35:12

标签: javascript ember.js

我只是想"只是"来自我的Ember.js项目中的str.split()的原始值,而不是获得原始的分割值,我得到了一个ember原型的瀑布!

示例

for(var num in "1,2,3,4".split(",")){
  console.log(num);
}

结果(没有Ember):

0
1  
2 
3

结果(使用Ember)

0 
1 
2 
3 
nextObject 
firstObject 
lastObject 
contains 
getEach 
setEach 
mapBy 
mapProperty 
reject 
filterBy 
filterProperty 
rejectBy 
rejectProperty 
find 
findBy 
findProperty 
everyBy 
everyProperty 
any 
anyBy 
someProperty 
invoke 
toArray 
compact 
without 
uniq 
[] 
addEnumerableObserver 
removeEnumerableObserver 
hasEnumerableObservers 
enumerableContentWillChange 
enumerableContentDidChange 

这是我的jsbin .. http://jsbin.com/rodul/1/edit?html,js,console

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

这是因为你遍历返回的split()数组中的每个属性,而Ember为Array.prototype范围添加了很多内容,这样你就可以获得firstObject或{{1容易(例如) - 有关详细信息,请参阅http://emberjs.com/api/classes/Ember.Array.html

简而言之:如果您使用lastObject或简单的forEach循环,您将看到预期的行为。在此处http://jsbin.com/dixihiqi/1/

查看您更新的jsbin

一般来说,我会使用for来表示对象而不是数组......(但那只是我)