2014-09-10 8 views
1

배열에서 임의의 200 개 개체를 검색하려고하는데 query.find() 메서드에서 반환했습니다. 먼저 모든 난수 생성을 구현하려고했습니다. 그리고 이제 막 밑줄을 썼습니다. js 메서드 "_.sample". 하지만 뭔가 잘못되었습니다. 밑줄에 대한 많은 지식이 없습니다 .js. 그래서 누군가가 도움이된다면 위대 할 것입니다.구문 분석 코드에서 Underscore.js의 메서드

TypeError: Object function (e){if(e instanceof T)return e;if(!(this instanceof T))return new T(e);this._wrapped=e} has no method 'sample' 

누군가가 바로이 오류가 무엇인지 설명해주십시오 : 내가 태양 _.sample 방법을 시도 할 때 그것은 나에게 오류를 제공합니다. 나는 검색을 시도했지만 설명적인 내용을 얻지 못했습니다. 미리 감사드립니다.

var queryPhrases = new Parse.Query("Phrases"); 
queryPhrases.select("phraseId"); 
queryPhrases.find().then(function(phrases){ 
     var arrayOfUnused = _.sample(phrases,request.params.count); 
     user.add("usedPhrases",arrayOfUnused); 
     user.save(); 
     response.success(arrayOfUnused) ; 
}); 
+0

오류의 원인이 된 코드를 게시하십시오. –

+0

질문에 해당 오류를 생성하는 코드를 게시해야합니다. – Bojangles

+0

샘플은 1.5.2에서 도입되었습니다. 따라서 코드와 버전 번호 앞에 underscore.js 스크립트가 포함되어 있는지 확인하십시오. –

답변

1

주셔서 감사합니다 응답을 많이들 :

여기에 코드입니다. 내 코드에서 _.sample을 실행하는 이유 또는 솔루션을 찾을 수 없습니다. 그래서 나는 그것을 다른 방향으로 구현했다. 여기 내가 한 일이있다.

var arrayOfUnused = _.first(_.shuffle(phrases),request.params.count); 

이것은 작동합니다. :-)

3

파스 클라우드 코드에는 Underscore의 오래된 버전이 포함되어 있지만 좌절감으로 어떤 버전인지 알 수 없습니다. Underscore가 더 이상 Parse Javascript SDK와 함께 v1.6.0 (2015 년 후반)에 제공되지 않았지만 이전에는 UnderscoreJS v1.4.4 (2013 년 초반) 만 사용 했으므로 Cloud Code가 그 주위의 것을 사용할 것으로 기대합니다.

Cloud Code에 최신 Underscore 소스를 추가하는 것은 항상 옵션이며, require은 다른 파일과 같습니다.

또는 다음을 사용하여 포함 된 Underscore Cloud Code 모듈에서 사용할 수있는 기능 목록을 표시했습니다.

var _ = require('underscore'); 
var availableFunctions = _.functions(_); 
console.log('Available Underscore Functions: ' + JSON.stringify(availableFunctions)); 
관련 문제