JavaScriptでCookieを使ってみようと思い、
以下のようなサンプル関数をもらってきたのですが。

この中の 24 * 60 * 60 * 1000 * 31 * 1 ってそれぞれの数値は何を示しているのでしょうか??
消去日の設定部分なのは良くわかるのですが。
初歩的な質問で、すいませんが、どなたか教えてください。

------以下サンプルの関数------

function SetCookie (name,value)
{
var argv = SetCookie.arguments;
var argc = SetCookie.arguments.length;
var expires = (argc > 2) ? argv[2] : null;
var path = (argc > 3) ? argv[3] : null;
var domain = (argc > 4) ? argv[4] : null;
var secure = (argc > 5) ? argv[5] : false;

document.cookie = name + "=" + escape (value) +
((expires == null) ? "": ("; expires=" + expires.toGMTString())) +
((path == null) ? "": ("; path=" + path)) +
((domain == null) ? "" : ("; domain=" + domain)) +
((secure == true) ? "; secure" : "");
}

// 消去日の設定は、この関数の中に指定します
function set_data(name,put_data)
{
var expdate = new Date ();
expdate.setTime (expdate.getTime() + (24 * 60 * 60 * 1000 * 31 * 1));
SetCookie (name,put_data,expdate);
}

このQ&Aに関連する最新のQ&A

A 回答 (2件)

こういう意味じゃないかな。


24時間*60分*60秒*ミリ秒を秒にする1000*ひと月(31日)*1ヶ月
つまり、1ヶ月間保存。
    • good
    • 0
この回答へのお礼

ありがとうございます。
これで保存期間の変更ができます(^^)

お礼日時:-0001/11/30 00:00

下の方の回答が正解ですね。

ちょっと補足。

DateオブジェクトのgetTime()メソッドは1970年1月1日0時0分0秒からの経過時間をミリ秒単位で返すものです。
setTime()メソッドはミリ秒単位でDateオブジェクトに時間を設定するものです。

上記プログラムでは、getTime()によって得た現在時刻に、1ヶ月(31日分)のミリ秒を足したものをsetTime()で設定しています。

良く使われるプログラムです。
    • good
    • 0
この回答へのお礼

おー、これでより良くわかります。
訳わからないで使う心配がなくなりました。
ありがとうございますっ。

お礼日時:-0001/11/30 00:00

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

Qjavascriptのソースでvar result = c * (t

javascriptのソースでvar result = c * (t /= d) * t + b;という関数は何を計算しているのでしょうか?


東京インタラクティブ・アド・アワードのサイトのソースをみたのですが、
http://tokyo.interactive.ad.awards.jp/Results09/index.html

ソースの中にある

<script type="text/javascript">
smoothEaseIn = function(t, b, c, d){
var result = c * (t /= d) * t + b;
return result;
}
//new wrapScroll('sidemenu','content');
var mov2 = new wrapScroll('backtop','content05');
mov2.setTween(smoothEaseIn, 100);
</script>

のうち、

==

smoothEaseIn = function(t, b, c, d){
var result = c * (t /= d) * t + b;
return result;

==

の部分は何を計算しているのでしょうか?
「c * (t /= d) * t + b;」の部分はどういう意味でしょうか?

この部分が「wrapscroll.js」をあらわしているのはわかるのですが、その他のことがあまりわかりません。

詳しい方、ご教授いただけませんでしょうか?

javascriptのソースでvar result = c * (t /= d) * t + b;という関数は何を計算しているのでしょうか?


東京インタラクティブ・アド・アワードのサイトのソースをみたのですが、
http://tokyo.interactive.ad.awards.jp/Results09/index.html

ソースの中にある

<script type="text/javascript">
smoothEaseIn = function(t, b, c, d){
var result = c * (t /= d) * t + b;
return result;
}
//new wrapScroll('sidemenu','content');
var mov2 = new wrapScroll('backtop','content05');
mov2...続きを読む

Aベストアンサー

mov2.setTween(smoothEaseIn, 100);

.setTweenはwrapScroll.prototypeに設定されているメソッドですが

//wrapscroll.jsの断片
 setTween: function(f,d){
  if(f){
   this.tween=f;
  }
  if(d){
   this.Duration=d;
  }
 },
 tween: function(t,b,c,d){
  return c * (t /= d) * t + b;
 }

渡された引数をmov2.tween, mov2.Durationに代入してます。プロパティー追加メソッドですね。
Durationのデフォルト値は60ですが、smoothEaseIn関数はあらかじめ用意されてる
tweenメソッドとまったく同じ処理ですから

mov2.setTween(false, 100);

こう書けます。

//wrapscroll.jsの断片
o.e.style.top = t.tween(t._timer++, s, e - s, t.Duration, o.e.style) + 'px';

tweenメソッドはタイマーで呼ばれ続けます。スムースに移動させる肝ですね。
それぞれの値ですが、_timerは実行ごとに1増えるカウンタ。
sは位置設定する要素の配置位置(obj.offsetTop)。eは表示領域上端位置(スクロール量)。
DurationはsetTweenに渡した100。
o.e.styleはオプション。デフォルトでは使われてませんね。

まとめると。

c * (t /= d) * t + b;
表示領域上端と要素位置との差 * (カウンタ /= 100) * カウンタ + 要素位置;

誤読がなければこのように読めるかと。

//単純にした式
smoothEaseIn = function(t, b, c, d, s){
return b + c; //要素位置 + 表示領域上端と要素位置との差
}

mov2.setTween(smoothEaseIn, 100);

.setTweenはwrapScroll.prototypeに設定されているメソッドですが

//wrapscroll.jsの断片
 setTween: function(f,d){
  if(f){
   this.tween=f;
  }
  if(d){
   this.Duration=d;
  }
 },
 tween: function(t,b,c,d){
  return c * (t /= d) * t + b;
 }

渡された引数をmov2.tween, mov2.Durationに代入してます。プロパティー追加メソッドですね。
Durationのデフォルト値は60ですが、smoothEaseIn関数はあらかじめ用意されてる
...続きを読む

Qvar $i = hoge; $の意味について

初心者の質問ですみませんが教えて下さい。
jqueryのソースで以下のソースがあったのですが、
var i = ではなくvar $i にしないといけない理由ってありますか?

var $i = $( '#img' ); // 対象の img タグを選択
var img = new Image();
img.src = $i.attr('src');

Aベストアンサー

こんにちは。

$iにしなくてはいけない理由はないと思います。

多分$('#img')でjQueryのオブジェクトを取得してるので$をつけているんだと思います。
(私もjQueryで取得した要素については$を付けるようにしています)
ようするにわかりやすいようにです。

Qvar aaa=bbb?cccl:ddd; の意味を教えて下さい。

タイトルそのままです。
function内にある
var aaa=bbb?cccl:ddd;
の意味を教えて下さいませ。

Aベストアンサー

がると申します。
これは、三項演算子と呼ばれるものになります。
基本的には
式 ? trueの値 : falseの値
という形を取ります。
上述ですと、
もしbbbが判定式としてtrueを取るのならaaaにccclを、falseになるのならdddを代入する
という感じになるかと思います。

Qfor(var i=0;...) の i の値を保持するには?

-----
<ul>
<li>test1</li>
<li>test2</li>
<li>test3</li>
</ul>

<script type='text/javascript'>
(function(){
var li = document.getElementsByTagName('li');

for(var i=0,max=li.length; i<max; i++){
li[i].onclick = function(){
alert(i);
};
}
})();
</script>
-----

上記スクリプトを実行すると、全てのli要素でクリックしたときに "3" がalertされます。
0,1,2 をそれぞれalertしたいのですが、どういった方法が考えられるでしょうか?

現在作成しているスクリプトでは、下記のようにidに値を保持しています。
もう少しスマートな方法がある気がするのですが…。

---
li[i].id = 'test' + i;
li[i].onclick = function(){
alert(this.id.replace(/^test(\d+)/, '$1'));
};
---

-----
<ul>
<li>test1</li>
<li>test2</li>
<li>test3</li>
</ul>

<script type='text/javascript'>
(function(){
var li = document.getElementsByTagName('li');

for(var i=0,max=li.length; i<max; i++){
li[i].onclick = function(){
alert(i);
};
}
})();
</script>
-----

上記スクリプトを実行すると、全てのli要素でクリックしたときに "3" がalertされます。
0,1,2 をそれぞれalertしたいのですが、どういった方法が考えられるでしょうか?

現在作成しているスクリプトでは、...続きを読む

Aベストアンサー

http://nanto.asablo.jp/blog/2005/12/04/165848
メモリーリークにみえて、そうでない・・・

>HTMLObjectに勝手にプロパティ
これはよくないことだじょ!そうおそわった。

ついでにいうと、いべんとをなんこもていぎするより
No3.みたいにおおもとにひとつでじゅうぶん。
innerHTMLで、ぜんたいをかきかえたとしてもOK!
と、TAGindex
http://www.tagindex.com/cgi-lib/q4bbs/patio.cgi
でおそわったじょ!

QJavaScriptにて『var val2 = "dv" + i;』のdvとは?、超初心者です。

<script type="text/javascript">
<!--
var timerID = "";

function mn(n){
if(timerID != ""){
clearTimeout(timerID);
}
var val = n;
dlt2();
document.getElementById(val).style.visibility="visible";
document.getElementById(val).style.zIndex="1";
}

function dlt(){
timerID=setTimeout("dlt2()",100);
}

function dlt2(){
for (i=1;i<3;i++){
var val2 = "dv" + i;
document.getElementById(val2).style.visibility="hidden";
document.getElementById(val2).style.zIndex="0";
}
}
//-->
</script>
<style type="text/css">
<!--
a{text-decoration:none;color:gray;}
a:hover{color:#000000;}
body{color:#000000;font-size:12pt;
line-height:150%;font-family:"MS Pゴシック";}
table{color:#ffffff;font-size:12pt;
line-height:150%;font-family:"MS Pゴシック";}

#dv1{
/* ↓ここの position の値がプルダウンメニュー1の表示位置です */
position:absolute;left:12;top:42;
background-color:#ffffff;visibility:hidden;
border: 1px solid gray;
}
-->
</style>
</head>


<body>

(文字数制限により省略させていただきます)

</body>
</html>
----------
参考URL:
http://ryos.info/hp_sakusei/pulldown.htm

JavaScriptでプルダウンメニューを作ろうとして、ネットで勉強していますが早速つまずいています。
調べてみましたが、結局解りませんでした。

上記のfunction dlt2()の部分で、『var val2 = "dv" + i;』とあります。
この"dv" とは何を表しているのでしょうか?

初歩的な質問で申し訳ございません。

教えていただけましたら幸いです。

<script type="text/javascript">
<!--
var timerID = "";

function mn(n){
if(timerID != ""){
clearTimeout(timerID);
}
var val = n;
dlt2();
document.getElementById(val).style.visibility="visible";
document.getElementById(val).style.zIndex="1";
}

function dlt(){
timerID=setTimeout("dlt2()",100);
}

function dlt2(){
for (i=1;i<3;i++){
var val2 = "dv" + i;
document.getElementById(val2).style.visibility="hidden";
document.getElementById(val2).style.zIndex="...続きを読む

Aベストアンサー

「dv」単体には意味が無く、そのfor文内で
「val2 = "dv1"」「val2 = "dv2"」になりますよね。

HTMLの中に「dv1」「dv2」と名前の付けられているdivがありますから、そのオブジェクトを指しているようです。


人気Q&Aランキング

おすすめ情報