js学习

作者: sindorina | 来源:发表于2020-12-24 20:31 被阅读0次

JavaScript学习

数据类型

  1. 整数 number 包含整数和浮点数
  2. 布尔 boolean
  3. 字符串类型 string 必须用双引号或者单引号括起来
  4. 未定义类型 undifined 专门用来确定一个已经创建但是没有初始值的变量
  5. 空类型 null 用于表面某个变量为空
  6. 对象类型 object , JavaScript里面的对象,数组

转换和字符串操作

  1. 转字符串 通过 + 号,或者 toString()方法
  2. 通过 parseInt()将字符串转换成整型
  3. 通过 parseFloat()将字符串转换成浮点型
  4. charAt()获取字符串指定索引处的字符
  5. toUpperCase()将所有字母变成大写
  6. toLowerCase()将所有字母变成小写
  7. indexOf()返回字符串中出现特定字符串第一次出现的位置
  8. substring()返回字符串的某个子串
  9. slice()返回字符串的某个子串,支持负数参数,功能更强大
  10. concat()用于将多个字符串拼接成一个字符串
  11. replace()将某个字符串的子串替换成目标子串
  12. split()将某个字符串按照指定分隔符拆分
  13. match()正则匹配搜索, 返回搜索的字符串
  14. search()正则匹配搜索,返回索引

比较2个字符串使用==,不需要使用equals

正则表达式

创建正则表达式

var reg = pattern;
var reg = /aaa/;//不要写引号
var reg = new RegExp(pattern);

RegExp对象的常用方法

  1. exec(str)检查字符串中指定的值, 如果找得到值,并确定其位置
  2. test(str)检索字符串中是否有满足条件的值,返回true或者false

通配符

  1. .匹配任意字符
  2. \d匹配数字类型
  3. \D匹配非数字类型
  4. \s匹配空白字符,空格,换行
  5. \S匹配非空白字符
  6. \w匹配数字,字母,下划线
  7. \W匹配非数字,字母,下划线
  8. \b匹配字母边界
  9. \B匹配非字母边界
  10. \b以..开头, \ba 以a开头, o\b以o结尾
  11. [abc]查找方括号里面的任何字符
  12. [^abc]查找任何不在方括号里面的字符
  13. [0-9]查找任何从0到9的数字
  14. [a-z]查找任何从小写a到小写z的字符
  15. [A-Z]查找任何从大写A到大写Z的字符
  16. [A-z]查找任何从大写A到小写z的字符
  17. (red|blue|green)查找任何指定的选项

正则表达式的量词

JavaScript的数组

var arr1 = [2,3,4];
var arr2 = [];
var arr3 = new Array();

特点

  1. 数组长度可变, 总长度等最大索引+1
  2. 同一数组中的元素类型可以互不相同
  3. 当访问为副总的数组元素时, 该元素为undefined,不会数组越界

运算符

算术运算符

赋值运算符

比较运算符

逻辑运算符

位运算符

其他运算符

  1. 三目运算符?

  2. 逗号运算符,返回最右边表达式的值

    var a,b,c,d;
    a = (b=5,c=2,d=3);
    //a = 3
    
  3. void运算符

  4. typeof判断类型

  5. instanceof判断子类型

控制流程

条件控制

  1. if-else
  2. if - else if - else
  3. switch(表达式){case:break;}

循环控制

  1. while(循环条件){}

    循环次数不确定时,使用

  2. do{}while(循环条件)至少执行一次

  3. for(表达式1,表达式2,表达式3)循环

    循环次数确定时,使用

    for()
    
  4. for(变量 in 对象)

    遍历数组中的所有数组元素,遍历JavaScript对象的所有属性

  5. break跳出循环

  6. continue跳过本次循环

特殊语句

语句块

{
    var a = 1;
    var b = 'a';
}

空语句

异常抛出语句

throw new Error("aaaa");

异常捕获语句

try{
    
}catch(e){
    console.log(e.message);
}finally{
    
}

with语句(和kotlin的with一样)

with(document){
     
}

函数

函数定义

  1. 命名函数 function 函数名(参数列表){执行语句;return 返回值,可以没有}
function t(){
    return "hello";
}
  1. 匿名函数 function(参数列表){执行语句;return 返回值,可以没有}
var t = function(){
    return "hello";
}
t();//调用
  1. 使用function类构造匿名函数
new Function(参数列表,函数执行体)

函数调用

  1. 直接调用函数

    对象.函数引用

    当声明的一个函数没有指明分配给哪个对象使用的时候,默认分配给window对象

  2. 以call方法调用函数

    函数引用.call(调用者,参数1,参数2,...)

  3. 以apply方法调用函数

    函数引用.apply(调用者,arguments)

    arguments相当于数组,用来存放多个参数,和call方法类似

function show(name,age){
    alert("name: "+name+" age: "+age);
}
show("zhangsan",20);
show.call(window,"zhangsan",20);
show.apply(window,["zhangsan",20]);

//函数作为参数
function show2(arr,func){
    func.call(window,arr);
}
show2([1,2,3,4],function(arr){
    for(i in arr){
        document.write(arr[i]+"<br/>")
    }
});

常用的内置对象

Date

  1. 创建方式

    new Date();
    new Date(month dd,yyyy hh:mm:ss);
    new Date(yyyy,month,dd,hh,mm,ss);
    new Date(yyyy,month,dd);
    new Date(ms);
    
  2. Date对象获取时间细节方法

    getDate();//返回一个月的某一天 (1~31)
    getDay();//返回一周中的某一天(0,6),就是星期
    getMonth();//返回月份(0,11)
    getFullYear();//返回4位数字年份
    getHours();//返回小时(0,23)
    getMinutes();//返回分钟(0,59)
    getSeconds();//返回(0,59)
    getTime();//返回从1970年1月1日至今的毫秒数
    
    

Math

abs(x);//返回绝对值
cell(x);//上舍入
floor(x);//下舍入
max(x,y);//返回x,y中的最大值
min(x,y);//返回x,y中的最小值
pow(x,y);//返回x的y次幂
random();//返回0~1的随机数
round(x);//把数4舍5入为最接近的整数
sqrt(x);//返回平方根

对象的创建

  1. 使用new关键字调用构造器创建对象

    function Student(name,age){
        this.name = name;
        this.age = age;
    }
    var s1 = new Student();
    var s2 = new Student("zhangsan",20);
    
  2. 使用Object创建对象

    var myobj = new Object();
    myobj.name = "zhangsan";
    myobj.age = 20;
    //相当于java的tostring, this指向myobj
    myobj.info = function(){
        doucument.write("my name is: "+this.name +"<br/>");
        doucument.write("my age is: "+this.age +"<br/>");
    }
    myobj.info();
    
  3. 使用JSON语法创建对象(javaScript Object Notaion)

    {name:"zhangsan",age:20}//JSON对象
    {people:[//JSON数组
        {name:"zhangsan",age:20},
        {name:"zhangsan2",age:21},
        {name:"zhangsan3",age:22}
    ]}
    
    //JSON对象创建举例
    var p = {
        name:"zhangsan",
        age:20,
        info:function(){
            document.write("name: "+this.name+" , age: "+this.age);
        }
    }
    p.info();
    

相关文章

  • JS 学习网址

    JS学习 JS标准参考教程 JS秘密花园

  • 2018-08-20

    今天学习了JS 运算符 JS 比较 JS If...Else JS Switch JS For JS While ...

  • JS基础和WebAPIs的关联性

    学习ECMAscript标准规定的基本语法掌握JS基础语法只学习JS基础做不了网页交互效果学习JS基础语法是为了后...

  • 原生js

    原生JS学习笔记1——基本数据类型和运算符 js的背景知识介绍,js的引入方式,js的变量及运算符 原生JS学习笔...

  • 【译】从 JS 学习 Lua

    原文:Learning Lua/From JS 从 JS 学习 Lua 对 JavaScript 已经了解,想学习...

  • 暑假过半总结及后半段计划

    总结 学习 7.6号开始小组学习,温习闭组前学到的js知识,明确未学习的js知识,7.21号完成js阶段作品,7....

  • Java EE之旅03-JS基础(上)

    JS学习大纲 JS简介 1、js是什么 2、js能做什么 3、js历史及组成 4、js被引入的方式 js基本语法 ...

  • Js高级程序设计你不知道的那些事儿

    写在开头: 为了学习方便,js程序分成两个阶段学习,JS初级和js高级阶段,js高级有很多需要理解的概念,重在理解...

  • Node.js学习express框架

    Node.js框架学习 express.js express.js是什么 Express基于Node.js平台,快...

  • 浅谈JS原型和原型链

    学习使用过js的人一开始都会觉得js简单,这是因为js语法简单,学习过编程语言的人,很容易掌握js的基本语法并按要...

网友评论

      本文标题:js学习

      本文链接:https://www.haomeiwen.com/subject/ivhvnktx.html