Safari で文字列を URL エンコード

JavaScript の話題ばかりだと愛想つかされてしまいそうです。そもそも、その成果がこのサイトに現れていないのはなぜ?とも思います。

実際には、サイトに JavaScript 関連の HTML をあげています。リンクをしていないだけで。Ajax は、ローカルだとテストできないんですね。そんなわけで色々とアップロードしてテストしているのですが、まぁ、人様に見せるほどのものではないし、JavaScript のサンプルだってあちこちに同じようなものがありますし。そのうち、Google 検索でひっかかるようになるかもしれません。

これだけだとなんですので、Safari で JavaScript を使ってエンコードをするスクリプトなんかを。

Script Editor で開く

set weekdayList to {"日", "月", "火", "水", "木", "金", "土"}
set theList to {}

repeat with i in weekdayList
    set end of theList to encodeWithJS(i)
end repeat

theList

on encodeWithJS(str)
    tell application "Safari"
        if exists front document then
            return do JavaScript "encodeURI('" & str & "')" in front document
        end if
        return str
    end tell
end encodeWithJS

on decodeWithJS(str)
    tell application "Safari"
        if exists front document then
            return do JavaScript "decodeURI('" & str & "')" in front document
        end if
        return str
    end tell
end decodeWithJS

このスクリプトを利用した結果がなにを意味しているか分からない、という人にはほとんど価値のないスクリプト。Ajax なんかで文字化けを回避するために文字列をエンコードしておきたいときがあるので、そんなときに使います。それ以外でも使えますが。Safari は、AppleScript から利用できる JavaScript 実行エンジンですね。

0 件のコメント :

コメントを投稿