我在名为streams的全局对象中有一个名为users的对象。用户的每个属性都是一个用户名,其值为一个数组,用于存储其他对象以及每个用户的信息。该项目应该是twitter的一个小版本。 E.g:
var users = {};
users.bill = []
users.keith = [];
var someInfo = {};
someInfo.tweet = "Hello, I am a message";
someInfo.dateCreated = new Date();
users.keith.push(someInfo);
上面是一个单独的.js文件,它包含在我的index.html文件中。我的index.html文件也有一个脚本部分,这就是我的问题所在。我尝试做的是使用jQuery在点击用户名时从tweet属性中检索字符串。这是我正在尝试的。
var showTimeline = function (){
var tweeter = $(this).text(); // get username from whichever name is clicked on
console.log(tweeter); // log name to console. e.g tweeter holds "keith"
console.log(streams.users["keith"][0].message); // this works fine and extracts string as expected
console.log(streams.users[tweeter][0].message); // program breaks here and says "tweeter is undefined", right after i logged it to the console and showed it holds the string "keith"
};
答案 0 :(得分:2)
有一些隐形字符会导致问题:
console.log(tweeter == 'douglascalhoun'); //false
这解决了它:
var tweeter = $.trim($(this).text());