<script type="text/javascript"> //获取当前时间 var now = newDate(); console.log(now);//当前时间:Wed Mar 20 2019 14:58:09 GMT+0800 (中国标准时间) //也可以自定义时间 var time = newDate("2019-03-20 15:04:14"); console.log(time); //可以set也可以get console.log(now.getDay()); console.log(now.getMonth());//注意0代表的是一月份 </script>
二、字符串的一些操作
1 2 3 4 5 6 7 8 9 10
<script type="text/javascript"> //字符串处理 var str = "HELLO fossi"; //str = str.replace("o","O");//替换o为O str = str.replace(/o/gi,"e");//g全局,i表示忽略大小写,这里用到了正则表达式 console.log(str); str = "HELLO fossi"; var res = str.split(" ");//按照空格进行切割,返回的是数组 console.log(res);// ["HELLO", "fossi"] </script>
<script type="text/javascript"> //可以改变作用域 var color = "red"; var person = {color:"green"}; functionshowColor(){ console.log(this.color); } showColor();//red showColor.apply(person);//green showColor.call(person);//green </script>
<script type="text/javascript"> //基本类型的包装类型 var s = "hello fossi"; // 等价于:var s = new String("hello fossi"); var res = s.split(" "); console.log(res); //但是一旦包装类型创建成功后就不能再像普通对象一样添加属性 s.name = "fossi"; console.log(s.name);//undefined </script>
包装类型可以提供一些方法让你调用,十分方便。上面说的是字符串,还有布尔和number类型:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
<script type="text/javascript"> var falseObj = newBoolean(false);//尽量不要用,会引起一些必要的问题 var fal = false; console.log(typeof falseObj);//object console.log(typeof fal);//boolean
//number类型 var numberObject = newNumber(10); var number = 10.005; console.log(number.toFixed(2));//指定显示的小数的位数,这里就是10.01 var number2 = 2374281472; console.log(number2.toExponential());//指数来表示 console.log(number2.toPrecision(3));//自己指定位数显示 </script>
八、eval
这玩意可就厉害了,可以把js的语句包在字符串里面,可以直接执行和调用,如下所示:
1 2 3 4 5 6 7 8
<script type="text/javascript"> //可以在eval里面嵌套语句或者函数 var a = "hello world"; eval("console.log(a)");//hello world
eval("function say(){alert(a)}"); say();//hello world </script>
九、面向对象
我们知道定义一个对象,如果没有任何处理的话,可以直接修改它的属性:
1 2 3 4 5 6 7 8 9
<script type="text/javascript"> var person = { name: "fossi", age: 20, sex: 1 }