JavaScript基础&BOM

js的string对象

  ** 创建String对象
    * var str = "abc";
  ** 方法和属性
    * 属性:length:字符串的长度
    * 方法
      (1)与html相关的方法
        - bold();
        - fontcolor();
        - fontsize();
        - link(); 将字符串显示为超链接
        str.link("hello.html");
        - sub() sup() 上下标

      (2)与java相似的方法
        - concat(); 连接字符串
          var str1 = "abc";
          var str2 = "def";
          document.write(str1.concat(str2));

        - charAt(); 返回指定位置的字符串
          var str = "abcdef";
          document.write(str.charAt(20));//字符位置不存在,返回-1

        - indexOf(); 返回字符串位置
          var str = "zzrcmlx";
          document.write(str.indexOf("r"));

        - split(); 切分字符串成数组
          var str = "a-b-c-d-e-f";
          var arr1 = str.split("-");
          document.write("length:"+arr1.length);

        - replace(); 替代字符串
          传递两个参数:
            第一个参数是原始字符
            第二个参数是要换成的字符
          var str1 = "abcde";
          document.write(str1.replace("a","Q"));

        - substr()和substring()
          var str = "abcdefghijk";
          document.write(str.substr(5,5));// fghij 从第五位开始,后面取五个字符
          *** 从第几位开始向后截取几位

          document.write(str.substring(3,5)); //de 从第几位截取到第几位结束 [3,5)
          *** 从第几位开始截取到第几位结束,但是不包括最后一位

 js的Array对象  

** 创建数组:
  * Array arr = [1,2,3,"e",true];
  * Array arr = new Array(3); arr[0] = 1;
  * Array arr = new Array(1,2,3,"a",true);

** 属性: length

** 方法
  - concat: 连接数组
    var arr1 = [1,2,3];
    var arr2 = [4,5,6];
    document.write(arr1.concat(str2));

  -join(); 根据指定的字符分割数组
    var arr = [1,2,3,4,5,6];
    document.write(arr.join("-"));

  - push(); 向数组末尾添加元素,返回数组的新的长度
  如果添加的是一个数组,就把这个数组当做一个整体添加进去

  - pop(); 删除最后一个元素,返回删除的那个元素

  - reverse(); 颠倒数组中元素的顺序

js的date对象

** java中获取当前时间
  Date date = new Date();
//格式化时间
  *** 方式1 toLocaleString()
  *** 方式2
    创建格式化对象:SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    格式化为日期/时间字符串 String cc = sdf.format(date);

** js里面获取当前时间
  var date = new Date();
  //格式化时间 document.write(date.toLocaleString());

** 获取当前年
  * getFullYear();
  document.write("year:"+date.getFullYear());

** 获取当前月
  * getMonth();
  var date1 = date.getMouth()+1;
  document.write("month:"+date1);
  *** 返回值是0-11月,为了得到正确值,加1

** 获取当前星期
  * getDay();
  document.write("week:"+date.getDay());
*** 星期天返回0,星期一到六返回1-6

** 获取当前天
  * getDate();
  document.write("day:"+date.getDate());

** 获取当前小时
  * getHours();

** 获取当前分钟
  * getMinutes();

** 获取当前秒
  * getSeconds();

** 获取毫秒数
  * getTime(); 返回的是1970 1 1 至今的毫秒数
  *** 应用场景:使用毫秒数处理缓存的效果(不有缓存)
  http://www.baidu.com?毫秒数

js的Math的对象

   * 都是静态方法,使用可以直接Math.a方法名()

  * ceil(x):向上舍入

  * floor(x):向下舍入

  * round(x):四舍五入

  * random():得到一个随机数(伪随机数)

    - 得到0-9的随机数

      Math.random()*10;

js的全局函数

  * 由于不属于任何一个对象,直接写名称使用

  ** eval(); 执行js代码(如果字符串是一个js代码,使用方法直接执行)
    var str = "alert('12345')"
    eval(str);

  ** encodeURL() 和 decodeURL() 对字符编码、解码

  ** isNaN(); 判断当前字符串是否是数字

    - 是数字返回false,不是数字就返回true

  ** parseInt; 类型转换,将字符类型转换为int类型

  ** parseFloat; 类型转换,将字符类型转换为float类型

js函数的重载

  * js里面是否存在重载?(面试题目)

    - js里面不存在重载

    - 但是可以通过其他的方式模拟重载 arguments

  

js的bom对象

* bom:browser object model  浏览器对象模型

** navigator:获取客户机信息(浏览器信息)
  document.write(navigator.appName);

** screen: 获取屏幕信息
  document.write(screen.width);
  document.write(screen.height);

** location: 请求url地址
* href: 获取到请求的url地址
  document.write(location.href);

* 设置url地址
  页面上安置一个按钮,按钮上绑定一个事件,当点击这个按钮时,页面跳转到另一个页面
  location.href = "hello.html";

** history:请求url的历史记录
* 创建三个页面
  1.创建第一个页面 a.html 写一个超链接到 b.html\
  2.创建 b.html 超链接到 c.html
  3.创建c.html
* 到访问的上一个页面
  history.back();
  history.go(-1);
* 到访问的下一个页面
  history.forward();
  history.go(1);


**** window ****
窗口对象
顶层对象(所用的bom对象都是在window里面操作的)

** 方法
  * window.alert("内容"); 弹框
    简写为 alert("内容");

  * window.confirm("显示的内容"); 确认框
    window.confirm("是否删除?");
      if(flag == true){
        alert("删除成功");
      }else{
        alert("删除失败");
      }

  * prompt(); 输入的对话框
    window.prompt("显示的内容","输入框默认的值");

  * open(); 打开一个新的窗口
    open("打开的新窗口的url地址","”,"窗口特征,比如窗口的高度和宽度");
    创建一个按钮,点击按钮打开新窗口
      <input type="button" value="open" onclick="open1()"/>
      <script type="text/javascript">
      function open1(){
        window.open("hello.html","","width=600,height=500");
      }

  * setInterval("js代码",毫秒数); 定时器,每毫秒数执行一次js代码
    setInterval("alert('aaaa')",3000);

  * setTimeout("js代码",毫秒数);定时器,毫秒数后只执行一次js代码
    window.setTimeout("alert('aaaa')",3000);

  * clearInterval(); 清除setInterval设置的定时器
    var id1 = setInterval("alert('aaaa')",3000);
    clearInterval(id1);

  * clearTimeout(); 清除setTimeout设置的定时器
    var id2 = setTimeout("alert('aaaa')",3000);
    clearTimeout(id2);

 

posted @ 2018-07-20 09:33  cmlx  阅读(89)  评论(0)    收藏  举报