javascript基础(二)

 

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript">
</script>
</head>
<body>
<?php 
if($a = 7 && $b = 7){
    $b++;
    $a++;
}
echo $a.'--'.$b;

?>
</body>
<script>
//www.developer.mozilla.org 文档

console.table()//显示为表格
console.group() //显示为组
/********Math内置对象********/
console.log(Math.PI);//圆周率
console.log(Math.ceil('2.88')); //进一取整
console.log(Math.floor('54.99999'));//舍一取整
console.log(Math.pow(2,3));//2的3次方  (2*2*2)
console.log(Math.sqrt(16));//计算平分根 ,普及:平分根是 总数 = (平分根后的值 * 平分根后的值)
console.log(Math.min(3,'989',true));//取最小的。都会转换成数值类型
console.log(Math.max(3,'989',true));//取最大的。都会转换成数值类型
console.log(Math.random());//0.0-0.9999...随机数。就是不会是1
console.log(Math.floor(Math.random()*5));//取随机数
console.log(Math.round(89.49));//四舍五入
/********Math内置对象********/

/********is_NaN不是数值********/
var m = 3.78;
console.log('m转换成整数的结果是:' + parseInt(m));
var m = '2587fd545';
console.log('m转换成整数的结果是:' + parseInt(m));
var m = '2A5';
console.log('m转换成整数的结果是:' + parseInt(m));
var m = 'df3476';
console.log(parseInt(m));
if(isNaN(m)){
    console.log('不是数值类型')
}
/********is_NaN不是数值********/

/********date日期********/
//date日期
var date = new Date();
console.log(date);
console.log(typeof(date)+date);
console.log(Date.now());//从1970年到此刻的毫秒数  
//设置时间 
console.log(date.getFullyear());
console.log(date.setFullYear(2017)); //设置年份
console.log(date.setMonth(13));//设置月份,范围为0~11
//如果设置的超过限制数,则会向上级进
console.log(date.setDate(19));//该月的第几天
console.log(date.setHours(11));//设置小时
console.log(date.setMinutes(01));//设置分钟
console.log(date.setSeconds(59));//设置秒数
console.log(date.setMilliseconds(1005));//0 到 999 的数字,表示豪秒数

var now = new Date();
document.write('Date.now()的结果是:' + Date.now() + '<br><hr>');
document.write('UTC时区的字符格式是:' + now.toUTCString() + '<br><hr>');
console.log('UTC时区的字符格式是:'+now.toUTCString());
///////////////////////////////////////
//设置cookie//
now.setDate(now.getDate()+10);  
document.cookie = "username=tarena;expires=" + now.toUTCString();//这种格式,用cookie时用这个格式日期
/********date日期********/

/********Array数组对象********/
//isArray判断是不是数组
var arr = [];
console.log('arr的数据类型是:' + typeof(arr));
var obj = {};    
console.log('obj的数据类型是:' + typeof(obj));
if(Array.isArray(arr)){
    console.log('变量arr的数据类型是数组');
} else {
    console.log('变量arr的数据类型是不是数组');
}
if(Array.isArray(obj)){
    console.log('变量obj的数据类型是数组');
} else {
    console.log('变量obj的数据类型是不是数组');
}

var arr1 = new Array();
var arr2 = new Array('北京','上海','广州');
var arr3 = [[1,'北京','通州'],[2,'北京','朝阳'],[3,'广东','广州']];//数组
if(Array.isArray(arr3)){
    console.log('');
}else{
    console.log('不是');
}
console.log('Arrar的成员数是'+arr1.length+'值是'+arr1+'类型是'+typeof(arr1));//length获取字符串的个数
console.log('Arrar的成员数是'+arr2.length+'值是'+arr2);
console.table(arr3);
console.group();
for(var i=0;i<arr3.length;i++){
    console.log('编号'+arr3[i][0]+'地域:'+arr3[i][1]+''+arr3[i][2]);
}
console.groupEnd();
//for in遍历循环
console.group();
var array = {'7':'aa','17':'bb','20':'cc'};//自定义数组对象
if(Array.isArray(array)){ //isArray是ES5新增
    console.log('');
}else{
    console.log('不是');
}

for(var key in array){
    console.log('键名'+key+'键值'+array[key]);
}
console.groupEnd();
//ES5开始支持forEach遍历循环
console.group();
arr3.forEach(function(value,key){
    console.log('键名'+key+'键值'+value);
});
console.groupEnd();

//push在数组的末尾添加新的元素,并返回数组新的长度。
var arr = ['aa','bb','cc'];
var arr1 = arr.push('dd','ee');
console.log('数组拼接'+arr);
//unshift向数组的开头添加新的元素,并返回数组新的长度。
var arr2 = arr.unshift('a','b','c');
console.log('数组开头加新元素'+arr);
//reverse将数组的元素位置颠倒
console.log(arr.reverse());
//concat多个数组合并,相同的值不会被覆盖,也不会改变数组中的值
var arr1 = ['中国','法国','德国'];
var arr2 = ['北京','上海','天津'];
var arr3 = ['北京','上海','天津'];    
var arr4 = arr1.concat(arr2,arr3,true,2.3);
console.log(arr4);
//join将一维数组转为字符串,默认参数不填以,分隔
var arr1 = ['中国','法国','德国','法国','美国'];
console.log(arr1.join(' '));
//indexOf在数组中查找元素所在的第一个索引位置,不存在返回-1。---ES5新增
console.log(arr1.indexOf('法国'));
//lastIndexOf在数组中查找元素所在的最后一个索引位置,不存在返回-1。---ES5新增
console.log(arr1.lastIndexOf('法国'));
//every()测试数组的每个元素是否通过指定函数的测试(满足函数条件),返回boolean。---ES5新增
function isBigEnough(element, index, array)
{
    return (element >= 10);
}
var object = [23,568,65,31,12];
var boolean =  object.every(isBigEnough);
console.log(boolean);
//some()测试数组中的某些元素是否通过指定函数的测试(满足函数条件),满足一个元素就会返回true,则返回false。---ES5新增
function isMinEnough(element, index, array)
{
    return (element <= 20);
}
var oneBool = object.some(isMinEnough);
console.log(oneBool);
//map()返回一个由回调函数的返回值组成的新数组,新数组的成员数量与原数组的成员数量相同
var arr1 = [5,10,15,20];
var arr2 = arr1.map(function(value){
            return value*2;
    });
//filter过滤掉undefined    
var arr1 = [1,22,5,7,10,15,20];
var arr2 = arr1.filter(function(value){
    if(value >= 10){
        return value;
    }
});
console.log('原始数组:' + arr1);
console.log('过滤后的数组:' +arr2);
/********Array数组对象********/

/********正则表达式 ********/
/* 
//标志
g   全局搜索(匹配多个)
i   不区分大小写
m   多行搜索
//特殊字符
\     转义符,转成普通的字符
^     以指定字符开头
$     以指定字符结尾
*     匹配前一个表达式0次或多次。等价于 {0,}
+     匹配前面一个表达式1次或者多次。等价于 {1,}
?     匹配前面一个表达式0次或者1次。等价于 {0,1}
.     匹配除换行外的任意单个字符,等价于[^\n\r]
(x) 匹配 x 并且捕获匹配项,括号被称为 捕获括号
(?:x) 非捕获组
x|y 匹配‘x’或者‘y’
x?  匹配零次或一次,等价于x{0,1}
x*    匹配零次或多次,等价于x{0,}
x+    匹配一次或多次,等价于x{1,}
x{m}    匹配m次,等价于x{m,m}
x{m,}    匹配至少m次,等价于x{m,}
x{m,n}    匹配至少m次,至多n次
[xyz]    字符组,匹配所包含的任意一个字符;
[^xyz]    反字符组,匹配任意不在括号内的字符;
\d       匹配任意数字字符,等价于[0-9];
\D       匹配任意非数字字符,等价于[^0-9];
\w       匹配任意字母、数字字符,包括下划线,等价于[A-Za-z0-9_];
\W       匹配任意非字母、非数字字符,非下划线,等价于[^A-Za-z0-9_];
\s       匹配任意的空白字符,包括空格、制表符、换页符和换行符。等价于[ \f\n\r\t\v];
\S       匹配任意的非空白字符,等价于[^ \f\n\r\t\v];
\n   匹配一个换行符
\r   匹配一个回车符
 */
//正则方法
//test()一个在字符串中测试是否匹配的RegExp方法,它返回true或false。
var search = /\w+/;
var str = 'afd453fd';
if(search.test(str)){
    console.log('匹配成功');
}else{
    console.log('匹配失败');
}
//exec()一个在字符串中执行查找匹配的RegExp方法,它返回一个数组(未匹配到则返回null)
var str = '5555W5B3C9D7';
var pattern = /([A-Z]+?)(\d+?)/;
console.log(pattern.exec(str));
</script>
</html>

 

posted @ 2017-07-01 00:17  note资料  阅读(92)  评论(0)    收藏  举报