Javascript 如何知道传入函数参数的变量名?
这就是我所拥有的(示例): HTML: 每个按钮都有一个数组,id为var name 当我单击一个Javascript 如何知道传入函数参数的变量名?,javascript,jquery,Javascript,Jquery,这就是我所拥有的(示例): HTML: 每个按钮都有一个数组,id为var name 当我单击一个标记时,我用按钮的id作为参数调用函数,然后,我用传递给函数的id在数组中按下一些东西,但是,我怎么知道播放列表?名称 谢谢大家,大家好 将播放列表数组放入一个对象中,该对象的键对应于ID。然后使用id检索正确的播放列表阵列,然后按 var playlists = { playlist01: [], playlist02: [], playlist01: [], }; function
标记时,我用按钮的id作为参数调用函数,然后,我用传递给函数的id在数组中按下一些东西,但是,我怎么知道播放列表?
名称
谢谢大家,大家好 将播放列表数组放入一个对象中,该对象的键对应于ID。然后使用id检索正确的播放列表阵列,然后按
var playlists = {
playlist01: [],
playlist02: [],
playlist01: [],
};
function pushSong(id) {
playlists[id].push("whatever");
}
所有变量的作用域都是最接近的。所有函数都是闭包。变量位于外部函数的范围和上下文中,因此,如果将外部函数的上下文传递给
pushSong
函数,则可以执行以下操作:
function pushSong(id) {
this[id].push("whatever");
};
通过传递当前this
函数(变量范围为:
pushSong.call(this, $(this).attr("id"));
使用switch语句,这样每个可能的播放列表都有一个案例,否则需要使用一系列else-if语句
或者将其更改为使用双数组播放列表[]和[1][]作为第一个播放列表,使用[2][]作为第二个播放列表,等等。使用播放列表的集合(数组或对象),而不是多个变量。这很有效!但是,如何将新的播放列表04动态推送到播放列表中?(如果我不知道名字,但我在一个变量中有它,比如
playlists.push($foo:[]);
)
function pushSong(id) {
this[id].push("whatever");
};
pushSong.call(this, $(this).attr("id"));