我一般对React Native,JS和编码都比较了解。我在代码中抛出以下错误,但是我在这里提出这个问题,因为我认为这是我所理解的更大的证据。对于我的问题的特定解决方法将不胜感激,但是高级别的解释将对社区更加有用和有益。
注意:我从程序员那里购买了此应用程序的API功能,并使其正常工作。我不完全了解异步并等待,并认为这可能就是我遇到问题的原因。当我注释掉findCriteria()函数时,一切运行顺利,并且我发布了推文;但是,当留在程序中时,会出现以下错误:
Possible Unhandled Promise Rejection (id:0):
TypeError: undefined is not an object (evaluating 'parsedArray.reduce')
我的代码如下:
async componentDidMount()
{
let twitterRest = new TwitterRest(); //create a new instance of TwitterRest Class
let twitts = await twitterRest.pullTimeLine('google'); //pull the Google TimeLine
function findCriteria(array, type){
parseArray = (array, type) => {array.map((tweet) => {
return tweet[type];
})};
let parsedArray = parseArray(array, type);
findAvg = (parsedArray, array) => {parsedArray.reduce((totalV,currentV) => {
return totalV + currentV;
}, 0)/array.length};
let avg = findAvg(parsedArray, array);
findDiffs = (parsedArray, avg) => {parsedArray.map((index) => {
return avg-index;
})};
let diffs = findDiffs(parsedArray, avg);
findCriteria = (diffs, array, avg) => {(diffs.reduce((totalV,currentV) => {
return totalV + currentV;
}, 0)/array.length) + avg};
let solution = findCriteria(diffs, array, avg);
return solution;
};
let rtCriteria = findCriteria(twitts, "retweet_count");
this.setState({rtCriteria: rtCriteria});
我正在尝试找到标准偏差fyi。
非常感谢。