该帮助的版本不再更新,请参见https://www.jmp.com/support/help/zh-cn/15.2 获取最新的版本.


JMP interprets object names using name resolution. The following rules are applied sequentially to unscoped names:
1.
2.
If the variable is prefixed by : scope operator or an explicit data table reference, look it up as a data table column or table variable.
3.
If the variable is prefixed by :: scope operator, look it up as a global variable.
4.
If the variable is an explicit scope reference (such as group:vowel), look it up in the user-defined group namespace.
5.
If the variable is in a Local or Parameter function, look it up as a local variable. If it is nested, repeat until a function call boundary is found.
10.
If Names Default to Here(1) is at the top of the script, stop looking. The scope is local.
If the variable is preceded by :: scope operator, create and use a global variable.
If Names Default to Here(0) is at the top of the script, create a global variable.
If Names Default to Here(1) is at the top of the script, create a Here namespace variable.
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
Show( :weight << Get As Matrix ); // weight resolves to a column name
Close( dt, NoSave );
Show( :weight << Get As Matrix ); // weight cannot be resolved
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
Show( :weight << Get As Matrix ); // weight resolves to a column name
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
col = Column( dt, 5); // col is Column( "weight" );
Close( dt, NoSave );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
Show( col << Get As Matrix ); // The reference to the first data table no longer exists.