我正在編寫一個程序來從飛行控制器獲取值,然後使用這些值與HUD進行交互。我面臨的問題是我無法從飛行控制器功能中獲取變量並將其傳遞給HUD功能。我試過window
沒有運氣,嘗試嵌套功能,以及我在網上找到的其他東西 - 它們都不起作用。任何幫助將非常感激。下面的代碼 -局部變量不成爲全局
這是從飛行控制器拉動數據的部分 -
var roll_in;
listenerImu.subscribe(function(message, roll_in) {
roll_in = (message.twist.linear.x) * (-57.2958);
return roll_in;
});
一旦數據被放入roll_in
,它需要投入這個功能 -
function FlightIndicator(placeholder, type, options) {
var attitude = this;
var settings = $.extend({
size: 500,
roll: roll_in, // Vehicle Roll
pitch: pitch_in, // Vehicle Pitch
turn: 0,
heading: 0,
vario: 0,
airspeed: 0,
altitude: 0,
pressure: 1000,
showBox: false,
img_directory: 'jQuery-Flight-Indicators-master/img/'
},
options);
}
即使我在listenerImu
函數後面加上console.print(roll_in)
,它也會打印undefined
。
謝謝!
因爲您在塊作用域中定義了roll_in。那個回報什麼也沒做 – epascarello
他說他試過'window.roll_in'。 我們可能需要聲明'roll_in'的完整文件以及執行此腳本的位置?在瀏覽器中? –
注意:[變量影子](https://en.wikipedia.org/wiki/Variable_shadowing)。 –