我有一个在这样的函数内部生成的数组:
function easy() {
var colors = ["white", "red", "orange", "yellow", "green", "blue", "purple", "gray", "white", "red", "orange", "yellow", "green", "blue", "purple", "gray"];
}
我通过点击单选按钮调用此功能,但是当我稍后这样做时:
colors.sort(function() {return 0.5 - Math.random()});
它不起作用,我想可能是因为颜色只是一个本地数组。有没有办法让它工作://stackoverflow.com/posts/21558099/editghout整个页面?
答案 0 :(得分:2)
如果在函数之外声明数组,则其范围是全局的:
var colors;
function easy() {
colors = ["white", "red", "orange", "yellow", "green", "blue", "purple", "gray", "white", "red", "orange", "yellow", "green", "blue", "purple", "gray"];
}
easy(); // Here colors is defined;
答案 1 :(得分:0)
var colors;
function easy() {
colors = ["white", "red", "orange", "yellow", "green", "blue", "purple", "gray", "white", "red", "orange", "yellow", "green", "blue", "purple", "gray"];
};
easy();
colors.sort(function() {return 0.5 - Math.random()});
答案 2 :(得分:0)
您是否希望将其封装起来?
var easy = {
colors: ["white", "red", "orange", "yellow", "green", "blue", "purple", "gray", "white", "red", "orange", "yellow", "green", "blue", "purple", "gray"],
hello: function() { alert("Hello") }
}
alert( easy.colors.sort(function() {return 0.5 - Math.random()}) );
easy.hello();
答案 3 :(得分:-1)
可能你需要在几个程序中使用该变量。把它放在外部文件中,php通过include添加它。将其视为全局变量。