JavaScriptの関数を書きなぐる
Google Apps Scriptの勉強をしています。
初心者用のサイトを見ます。
初心者用サイト「大体JavaScriptだから余裕でしょ」
わい「余裕じゃない(余裕じゃない)」
※しばらく駄文が続く
初心者用のサイト「とりあえず恒例のHello World! 行ってみよう!」
わい「らじゃ」
初心者用のサイト「
function myFunction(){
Browser.msgBox("Hello World!");
}
ってやればいいよぉ
」
わい「そこまでは、行けそう」
初心者用のサイト「じゃあ、次な」
初心者用のサイト「
var a = 12345;
var b = a.substr(1,3);
」
わい「substrってなにぃぃぃぃ???????」
わい「OK, Google! 」
Googleで上位のサイト「
ほれ
引用元↓
」
わい「わからない(わからない)」
わい「反省してほしい」
注)素人には分からない、ということ。つまり僕がポンコツ、ということ。
素人にも分かりやすく説明します
substr:文字列を切り出す、抽出する
「sample = 012345」
という文字列sampleがある。
この文字列から、「234」を切り出したい。
以下の2つの条件をsubstrに教えてやれば良い。
- 何番目の文字から切り出すか
- 何文字切り出すか
それでは、「sample = 012345」から「234」を切り出すに当たって、
プログラミング言語では、先頭を0番目とすることが多い。
つまり、1. 何番目の文字から切り出すか ==> 2番目
はい余裕ー
次、2. 何文字切り出すか ==> 3文字
これは視力検査。
結局、
sample.substr(2,3)
ってしてやれば良いんです。
ま、これ以外にもいろいろありますが(例えば後ろを省略するとどうなるか、とか)
全部割愛。自分でやってみるがいい。
parseInt:文字を整数に変換、なんちゃら進数を10進数に変換
まず「文字を整数に変換」する機能について。
どんな時に使うかというと、「単位いらねーよ!」という時と「文字列型を数値型に変換したい」時です(それ以外もあると思います)
後者は難しいので、割愛。(inputBox関係でエラーが起こったらこの辺がクサイと思いましょう)
例えば、「100m」
というのがあって、「mがうざい」と思ったら、
parseInt("100m")
ってやれば、めでたく「100」が得られます。
というのも、先頭から調べていって、数字を含む部分だけを返す関数だからですね。
だから parseInt(Shibuya109) だとダメ。
関数が怒って「NaN」とかいうわけの分からない文字列を返します。(インド人かよ)
次に「なんちゃら進数を10進数に変換」する機能について。
この機能を発揮してもらうには、この関数に以下の2つの情報を教えてあげます。
- 変換したいもともとも数字は何か
- もともとも数字は何進数か
例えば16進数の「 f 」を10進数にしたかったら、
parseInt( f , 16)
としてやれば良い。それだけ。
とりあえずは以上。