zoukankan      html  css  js  c++  java
  • ECMAScript基础语法

    ECMAScript基础语法

    一、ECMA基础语法

    1.基本数据类型和引用数据类型

    基本数据类型:number,string,boolean,undefined,null
    引用数据类型:Array,Object,Function
    

    2.条件判断和循环

    switch(name){
        case 'xxx':
            break;
        case 'xxx':
            break;
        default:
            break;
    }
    【case穿透】
    
    for(var i = 0; i < 10; i ++){
        
    }
    
    三元运算
    1 > 3 ? '真的' : '假的';
    

    3.赋值运算符,逻辑运算符

    &&  跟py的and
    ||   or
    !    not
    
    i++
    
    ==   比较的值的
    ===   比较的值和数据类型
    

    4.字符串的常用方法

    slice() 切片,有一个参数,从当前位置切到最后,两个参数,顾头不顾尾
    substring()
    substr() 如果有两个参数,第二个参数表示切字符串的个数
    
    拼接字符串
    concat() 返回新的字符串
    +
    es6的模板字符串
    ``  插入变量用${变量名}
    
    //获取索引
    indexOf()
    lastIndexOf()
    
    //获取字符
    charAt()
    //获取字符的ASCII码
    charCodeAt()
    
    
    //转大写
    toUppercase()
    //转小写
    tolowercase()
    
    
    typeof 校验当前变量的数据类型
    
    trim() 清除左右的空格
    
    

    5.数组的常用方法

    toString()
    join('*')
    concat()
    
    //栈方法 后进先出
    push()
    pop()
    
    //堆方法 先进先出
    unshift()
    shift()
    
    
    splice(起始位置,删除的个数,添加的元素); 对数组的增加,删除,替换
    slice()
    reverse()
    sort()
    
    
    //迭代方法
    for
    forEach() 仅能在数组对象中使用
    在函数中arguments 这个对象是伪数组
    
    
    

    6.对象

    var obj = {
          name:'mjj',
          age:18
    }
    obj['name']
    obj['fav'] = function(){}
    obj.name
    obj.fav = function(){}
    
    
    function fn(name){
        var obj = {};
        obj[name] = 'mjj';
        return obj;
    
    }
    fn('age')
    
    //遍历对象
    for(var key in obj){
        obj[key]
    }
    

    7.函数

    1.创建方法
    (1)普通函数
       function fn(){
           
       }
       fn();
    (2)函数表达式
      var fn = function(){}
      
     (3) 自执行函数
     ;(function(){
        this指向 一定是指向window
     })()
    
    全局作用域下,函数作用域,自执行函数都指向了window,函数作用域中this指向可以发生改变,可以使用call()或者apply()
    
    
    var obj = {name:'mjj'};
    function fn(){
        console.log(this.name);
    }
    fn();//是空值,因为函数内部this指向了window
    fn.call(obj)//此时函数内部的this指向了obj
    
    
    作用: 解决冗余性代码,为了封装
    
    
    构造函数
    new Object();
    new Array();
    new String();
    new Number();
    
    
    //使用构造函数来创建对象
    function Point(x, y) {
      this.x = x;
      this.y = y;
    }
    
    Point.prototype.toString = function () {
      return '(' + this.x + ', ' + this.y + ')';
    };
    
    var p = new Point(1, 2);
    
    //es6用class来创建对象
    class Person{
        constructor(x,y){
            this.x = x;
            this.y = y
        }
        toString(){
            
        }
        
    }
    var p = new Person();
    

    8.日期对象

    var date = new Date();
    date.getDate();
    date.getMonth();
    date.getDay();
    date.getHours();
    date.getMinutes();
    date.getSeconds()
    
    date.toLocaleString() 2018/08/21 21:30:23
    

    9.Math数学对象

    Math.ceil();向上取整 天花板函数
    Math.floor();向下取整,地板函数
    Math.round();标准的四舍五入
    
    随机数
    Math.random(); 获取0到1之间的数
    
    function random(min,max){
        return Math.floor(Math.random()*(max-min)) + min;
    }
    

    10.数值和字符串转换

    1.数值转字符串
    toString();
    数字+空的字符串
    2.字符串转数值
    parseInt() 转整数
    parseFloat() 转浮点型
    Number()
    
    var a = NaN
    isNaN(a)
    
    Infinity 无限大的
    

    二、BOM

    浏览器对象模型(Browser Object Model (BOM))尚无正式标准。

    由于现代浏览器已经(几乎)实现了 JavaScript 交互性方面的相同方法和属性,因此常被认为是 BOM 的方法和属性

    Window 对象

    所有浏览器都支持 window 对象。它表示浏览器窗口。

    所有 JavaScript 全局对象、函数以及变量均自动成为 window 对象的成员。

    全局变量是 window 对象的属性。

    全局函数是 window 对象的方法。

    甚至 HTML DOM 的 document 也是 window 对象的属性之一:

    window.document.getElementById("header");
    

    与此相同:

    document.getElementById("header");
    

    三、DOM

    DOM (Document Object Model) 译为文档对象模型,是 HTML 和 XML 文档的编程接口。
    
    HTML DOM 定义了访问和操作 HTML 文档的标准方法。
    
    DOM 以树结构表达 HTML 文档。
    
    

    Cookie

    四、AJAX

    简介:

    AJAX是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。

    AJAX是什么?

    AJAX =异步JavaScript和XML。

    AJAX是一种用于创建快速动态网页的技术。

    AJAX通过在后台与服务器进行少量数据交换,使网页实现异步更新。这意味着可以在不重载整个页面的情况下,对网页的某些部分进行更新。

    传统的网页(不使用AJAX)如果需要更新内容,必须重载整个页面。

    有很多使用AJAX的应用程序案例:谷歌地图,Gmail,Youtube和Facebook。

  • 相关阅读:
    今天是不是要得瑟那么一下下啦
    今天小小的总结一下最近的小程序中的问题
    敏感词过滤和XML的创建
    【腾讯优测干货分享】安卓专项测试之GPU测试探索
    【腾讯Bugly干货分享】WebVR如此近-three.js的WebVR示例解析
    【腾讯Bugly干货分享】Android动态布局入门及NinePatchChunk解密
    【腾讯Bugly干货分享】基于RxJava的一种MVP实现
    【腾讯Bugly干货分享】动态链接库加载原理及HotFix方案介绍
    【腾讯Bugly干货分享】微信iOS SQLite源码优化实践
    【腾讯Bugly干货分享】移动客户端中高效使用SQLite
  • 原文地址:https://www.cnblogs.com/yx12138/p/10971788.html
Copyright © 2011-2022 走看看