js总结1

 js数据类型
1typeof运算符
"undefined",如果变量是undefined型的。
"boolean",如果变量是Boolean型的。
"number",如果变量是Number型的。
"string",如果变量是String型的。
"object",如果变量是一种引用型或Null类型的。
2.undefined类型
当声明的变量未初始化时,默认值是undefined。
当函数无明确返回值时,返回的值也是undefined
3.Null类型
alert(null==undefined);//输出true

4.Boolean类型,只有两种值true,false
var bfound=true;
5.String 类型
 var string1="anvnff";
 var str=1+"";//类型加空串,转换为字符串。
6.Number类型(包含小数,整数)
var a=55;
前两个Numebr.MAX_VALUE和Numebr.MIN_VALUE定义了Numeber值集合的边界。
判断一个数是否有穷的isFinit()
特殊值 NaN,表示非数
alert(typeof Number("a")); //number, NaN属于number类型
二、强制类型转换
1.parseInt
         alert(parseInt("abc")); //返回NaN
          alert(typeof parseInt("1")); //number
           alert(parseInt("1.1")); //返回1,去掉小数部分
2.parseFloat
            alert(parseFloat("abc"));//返回NaN
            alert(parseFloat("1.2"));//number
          alert(parseFloat("1"));//会自动去掉.0
三、创建对象方式
   1. 数组创建对象方式1:
    //    var arr = new Array();
    //    arr[0] = 1;
    //    arr[1] = 2;
    //    arr[2] = 3;
    //    alert(arr.length);
    //方式2:
    //    var arr1 = new Array(10);
    //    alert(arr1.length);
    //方式3:

      alert(arr3);
    方式4(常用方式)
    //var arr = [1, 2, 3, 4, 5];
    //var arr1 = [6, 7, 8];
2.Array常用方法

         shift(): 删除数组的第一个元素,返回删除的值.
            pop(): 删除数组的最后一个元素,返回删除的值.
           unshift(): 把参数加载数组的前面,返回数组的长度.
           push(): 将参数加载到数组的最后,返回数组的长度.
        concat():把两个数组拼接起来
        splice(start,deleteCount,val1,val2,...):从start位置开始删除deleteCount项,并从该位置起插入val1,val2,...  
      reverse(): 将数组反序,并返回新的数组
      slice(start,end):返回从原数组中指定开始下标到结束下标之间的项组成的新数组
3.日期对象
创建var now=new Date();
now.getFullYear();
now.getMonth();0-11的整数,表示1-12月
now.getDate();
now.getHours();
now.getMinutes();
now.getSenconds();
4.String
charcodeAT(index)返回指定索引的Unicode编码
charAT(index)返回指定索引位置的字符
slice(start[,end])
substring(start[,end])返回位于 String 对象中指定位置的子字符串。
        说明
        substring 方法将返回一个包含从 start 到最后(不包含 end )的子字符串的字符串。
        
        substring 方法使用 start 和 end 两者中的较小值作为子字符串的起始点。例如, strvar.substring(0, 3) 和 strvar.substring(3, 0) 将返回相同的子字符串。 
        
        如果 start 或 end 为 NaN 或者负数,那么将其替换为0。 
        子字符串的长度等于 start 和 end 之差的绝对值。例如,在 strvar.substring(0, 3) 和 strvar.substring(3, 0) 返回的子字符串的的长度是 3。 
        示例
        下面的示例演示了 substring 方法的用法。
        
        function SubstringDemo(){
           var ss;                         // 声明变量。
           var s = "The rain in Spain falls mainly in the plain..";
           ss = s.substring(12, 17);   // 取子字符串。
           return(ss);                     // 返回子字符串。
        }

lastIndexOf(substr[,startindex])返回字符串最后最后出现的位置。
    说明
    lastIndexOf 方法返回一个整数值,指出 String 对象内子字符串的开始位置。如果没有找到子字符串,则返回 -1。 
    如果 startindex 是负数,则 startindex 被当作零。如果它比最大字符位置索引还大,则它被当作最大的可能索引。 
    从右向左执行查找。否则,该方法和 indexOf 相同。
    
    下面的示例说明了 lastIndexOf 方法的用法:
    
    function lastIndexDemo(str2)
    {
       var str1 = "BABEBIBOBUBABEBIBOBU"
       var s = str1.lastIndexOf(str2);
       return(s);
    }

concat(str,str1)返回字符串的值,该值包含了两个或更多个提供的字符串的连接
例子:    function concatDemo()
    {
       var str1 = "ABCDEFGHIJKLM"
       var str2 = "NOPQRSTUVWXYZ";
       var s = str1.concat(str2);
       // 返回连接好的字符串。
       return(s);
    }
将URL中允许的字符编码,解码如空格,汉字。
 encodeURI(),decodeURI()
将特殊字符进行编码解码:如.?等
encodeURIComponent()
decodeURIComponent()
以下是总的例子,可以试试:
function myPrint(a) {
        document.write(a + "<br>");
    }
    var str = "abcadaef";
    var str1 = "123";
//    myPrint(str.charCodeAt(0));
//    myPrint(str.charAt(0));
//    myPrint(str.slice(0, 2));
//    myPrint(str.substring(1, 3));
//    myPrint(str.indexOf("a", 1));
//    myPrint(str.lastIndexOf("a", 7));
    myPrint(str.concat(str1));

    var url = "http://www.baidu.com/?username=123";
    var newUrl = encodeURI(url);
//    myPrint(newUrl);
//    var newUrl1 = decodeURI("http://www.baidu.com/%E7%99%BE%E7%A7%91");
//    myPrint(newUrl1);
    myPrint(encodeURIComponent(url));
    myPrint(decodeURIComponent("http%3A%2F%2Fwww.baidu.com%2F%3Fusername%3D123"));
    var now = new Date();

    var str = new String("abc");
    myPrint(str instanceof String);

原文地址:https://www.cnblogs.com/alicezq/p/4771691.html