zoukankan      html  css  js  c++  java
  • JS由三部分组成

    ECMAScript: (3/5/6/7)它是JS语言的标准,规定了JS的编程语法和基础核心知识

    DOM: document object model 文档对象模型,提供给JS很多操作页面中元素的属性和方法

    BOM: browser object model 浏览器对象模型 ,提供了很多操作浏览器 的属性方法,而这些方法都存放在window浏览器对象上

    1.ECMAScript (ES)

    =>命名规范

    ->只能用数字,字母,下划线起名,而且数字不能做开头
    ->不能使用关键字和保留字做名字(掌握常用的关键字和保留字)
    ->严格区分大小写
    ->驼峰命名法,名字有一个或多个英文(英文简写)
    组成(只是建议)不是规范 方便查看
    add/insert/create/append 增加/插入/创建/追加
    del/remove/clear 删除/移除/清空
    update/replace/修改/替换
    clone/copy 克隆/复制
    ...

    =>变量和常量

    var num=12;
    num=13;
    num是变量 12是常量
    赋值的操作其实是发变量和常量建立了连接关系
    ->常量就是一个具体值:就是数据类型

    基本数据类型(值类型): Number,string,boolean,null,undefineg
    引用数据类型
    object: {} , [] , /^-?(d|([1-9]d+))(. d+)?$/ ,new Date()....
    function:

    var obj={name:"zf"}
    ->预解释的时候首先声明一个叫做obj的变量
    ->开辟一个新的内存空间(有一个16进制的地址)
    ->把对象的属性名和属性值储存到这个空间中
    ->把空间地址赋值给变量(此时变量和常量之间就建立了连接)

    ====================================

    =>检测数据类型

    Number:
    NaN:not a number 不是一个数 但是属于Number类型的 typeof NaN->'Number'

    isNaN([val]): 检测一个内容是否为有效数字,是的话返回false,不是返回true

    NaN===NaN : false
    toFixed([number]):保留小数点多少位
    var num=Math.PI;//->圆周率:3.1415926
    num.toFixed(2) ->'3.14'

    字符串string: 只要使用' 引号' 或者"双引号 "包起来的都是字符串

    charAt
    charCodeAt
    substr
    substring
    slice
    indexOf
    lastIndexOf
    toUpperCase
    toLowerCase
    split
    replace
    ...

    Boolean: 布尔 true/false

    ! 取反
    !!把一个值转换为布尔类型值<=>Boolean
    只有"0,NaN,空字符串,null,undefined"五个值代表假,其余都是真
    null/undefined: 空/未定义

    数组

    方法的意思/参数意思/返回值/原有数组是否改变

    push ary[ary.length]=x ary.splice(ary.lenth,0,x)
    增加数组最后一项
    pop ary.length- - ary.splice(ary.length-1,1)
    删除数组最后一项
    shift
    删除数组前一项
    unshift
    增加数组前一项
    splice
    裁件拼接
    concat
    合并多个数组
    join

    toString
    sort
    reverse
    indexOf/lastIndexOf
    forEach
    map
    ...

    Math: 数学函数,本身是一个对象数据类型,里面提供了很多操作数字的方法

    Math.abs
    Math.ceil
    Math.floor
    Math.round
    Math.random Math.round(Math.random()*(m-n)+n)->[n-m]
    Math.max
    Math.min
    Math.pow Math.pow(10.3)->1000 十的三次幂
    Math.sprt Math.sprt(100)->10 给一百开平方
    ....
    在控制台执行:dir(Math)可以查看Math中的所有方法,自己总结其余方法的意思

    检测数据类型:

    typeof ->typeof null==='object' 及typeof的细节问题
    instanceof
    constructor
    Object.prototype.toString.call()

    ==================================

    =>三个判断和三个循环

    判断

    if,else if,else
    swith,case
    三元运算符

    循环

    for
    for in
    while

  • 相关阅读:
    转:Windows 7下安装CentOS双系统
    STL学习总结之<迭代器>
    转:linux静态库与动态库
    指向类成员和成员函数的指针
    STL学习总结之<仿函数>
    转:Linux Crontab 定时任务 命令详解
    转: 解决 Redhat 出现”This system is not registered with RHN”更新
    IOS 判断设备屏幕尺寸、分辨率
    IOS 文件管理共通函数整理
    IOS 编译ffmpeg For SDK6.1,模拟器、armv7、armv7s均可使用
  • 原文地址:https://www.cnblogs.com/Jiazexin/p/7080425.html
Copyright © 2011-2022 走看看