2016-04-28 6 views
0

AppleScriptは特別な値を知っているようです。nullです。Cocoaスクリプティング:「null」と「欠損値」を返す

Cocoa Scriptingベースのアプリからスクリプト可能なプロパティを取得するにはどうすればよいですか?

私はココアスクリプトベースのアプリケーションからスクリプト可能なプロパティのゲッターのためnilNULL)またはNSNullを返した場合、スクリプトエディタは、としての価値を行方不明と解釈。

もし私が[NSAppleEventDescriptor nullDescriptor]を返すと、AppleScriptでもエラーが表示されます。

答えて

0

AppleScriptは、割り当てられていない/指定されていない値を示すためにtypeNull記述子を使用します。missing valuetypeType記述子で表されます。cMissingValueです。 (これは、undefinednullのJavaScriptの混乱と同様のPITAに似ています)

+0

私のアプリケーションコードからヌル値を返すことは可能であるはずですか?どうですか? –

+0

ポイントは:そうではありません。 AppleScriptは 'undefined'をうまく扱いません。まさにJSの 'undefined'に似ています。まったく導入されてはいけない誤った機能です。 JSの 'null'に似た 'missing value'を使用してください。それがそこにあるのです。 'typeNull'記述子は、オブジェクト指定子チェーンのルートとしてのみ使用してください。 (AEMは、相対参照のルートを示す専用の 'typeObjectBeingExamined'型と' typeCurrentContainer'型を定義していますが、絶対参照、つまりアプリケーションのルート 'application'オブジェクトに関連する型は 'typeNull'を使用してそのルートを示します)。 – foo

+0

AS 「欠損値」と「ヌル」値の両方を知っていて、それらは区別されています。私がnull値を返すことについて尋ねるとき、私はAppleScriptの "ヌル"値を意味しました。それが私が返すものです。あなたは、 "欠けている価値"を返そうとしていると思われるように見えますが、これは欲しいものではありません。 –