zoukankan      html  css  js  c++  java
  • [前端] JavaScript

    背景

    • 同于网页和用户之间的交互
    • 由语言基础,BOM和DOM组成
    • AJX(Asynchronous JavaScript and XML):异步请求数据

    基本语法

    • document:js内置对象,代表浏览器文档部分
    • document.write("Hello js");
    • ja代码必须放在script标签中,script标签建议放在head标签中
    • 代码较多时,放在一个js文件中,再引用
      • <scriptsrc="https://how2j.cn/study/hello.js"></script>
    • 注释
      • // 单行注释
      • /* 多行注释 */

    变量

    • var x = 1; 或 x = 1;

    调试

    • alert(1);
    • firefox中的调试功能
    • console.log()

    数据类型

    • undefined:变量声明但未赋值
    • Boolean:true或false
    • Number:各种进制,浮点数,科学计数法的数字
    • String:字符串(js没有字符)
    • js中的变量是动态类型的
    • 使用 typeof 判断数据类型
    • null:对象不存在

    类型转换

    • 伪对象:基本类型也有属性和方法
    • toString():转换为字符串
    • String():转换为字符串(可处理null)
    • Number():转换为数字
    • parseInt():转换为数字
    • parseFloat():转换为数字
    • Boolean():转换为布尔值

    函数

    • function:定义一个函数
    • function print ( 参数 ) { 函数体 return 返回值} 

    作用域

    • 参数作用域
      • 函数参数的作用域在函数内部
    • 全局变量作用域
      • 定义在函数前为全局变量,可在所有函数中访问

    事件

    • js允许html与用户交互的行为,用户任何对网页的操作都会产生一个事件,如鼠标移动、点击等

     运算符

    • 基本运算符:+、-、*、/、%
    • 自增、自减运算符:++、--
    • 赋值运算符:=、+=、-=、*=、/=、%=
    • 逻辑运算符:==、!=、>=、<=
    • 三目运算符:?:

    条件语句

    • if...else...:条件判断
    • else if:多条件判断
    • switch:多条件判断

    循环语句

    • for:循环语句
    • while:循环语句
    • do-while:循环语句,至少执行一次
    • forEach:增强型循环
    • continue:继续下一次循环
    • break:终止循环

    错误处理

    • try...catch:捕捉可能产生的错误,保证剩下的语句可以执行

    对象

    • js中的对象是有着属性和方法的一种数据类型
    • 数字(Number)
      • new Number():创建Number对象
      • 属性
        • MIN_VALUE:Number的最小值
        • NaN:表示不是数字
      • 方法
        • toFixed():返回一个数字的小数表达
        • toExponential():返回一个数字的科学计数法表达
        • valueOf():返回一个数字对象的基本数字类型
    • 字符串(String)
      • new String():创建字符串对象
      • 属性
        • length:字符串长度
      • 方法
        • charAt():返回指定位置字符
        • concat():拼接字符串
        • indexOf():字符串出现的位置
        • localeCompare():比较两段字符串是否相同
        • substring():截取一段子字符串
        • split():根据分隔符把字符串转换为数组
        • replace():替换子字符串
    • 数组(Array)
      • 动态数组,长度可变
      • new Array():创建数组对象
      • 属性
        • length:数组长度
      • 方法
        • for():遍历数组
        • concat():连接数组
        • join():指定分隔符,返回一个数组的字符串表达式
        • push():在最后位置插入数据
        • pop():在最后位置获取并删除数据
        • unshift():在开始位置插入数据
        • shift():在最后位置获取并删除数据
        • sort():对数组内容排序
        • sort(comparator):自定义排序算法
        • reverse():对数组内容反转
        • slice():获取子数组
        • splice():删除和插入元素
    • 日期(Date)
      • new Date():创建日期对象
      • getFullYear():获取年
      • getHours():获取时
      • getDay():一周的第几天
      • getTime():经历的毫秒
      • setFullYear():修改日期和时间
    • 数学运算(Math)
      • 属性
        • E:自然对数
        • PI:圆周率
      • 方法
        • abs():绝对值
        • min():最小值
        • max():最大值
        • pow():求幂
        • round():四舍五入
        • random():随机数
    • 自定义对象
      • 方法1
        • <script>
        • var hero = new Object();
        • hero.name = "Gareen";
        • obj.kill = function(){...}
        • </script>
      • 方法2
        • <script>
        • function Hero(name){
        • this.name = name;
        • this.kill = function(){...}
        • }
        • var gareen = new Hero("Garren");
        • gareen.kill();
        • </script>
      • 为已存在的对象增加新方法
        • Hero.prototype.keng = function(){...}

    BOM

    • 浏览器对象(Browser Object Model)
    • Window:窗口
    • Navigator:浏览器
      • 提供浏览器的相关信息
    • Screen:客户端屏幕
      • 用户屏幕相关信息,如分辨率等
    • History:访问历史
      • back():返回上一次访问
      • go(-2):返回上上次访问
    • Location:浏览器地址栏
      • reload():刷新当前页面
    • 弹出框
      • alert():警告框
      • confirm():确认框
      • prompt():输入框
    • 计时器
      • setTimeout():只执行一次
      • setInterval():不停重复执行
      • clearInterval():终止重复执行
      • 不要在setInterval调用的函数中使用doucument.write()
  • 相关阅读:
    [Node.js] Availability and Zero-downtime Restarts
    [Node.js] Load balancing a Http server
    [Node.js] Child Process with fork() to handle heavy calculation process
    [Algorithm] Write your own Math.pow function in Javascript, using Recursive approach
    [Functional Programming] Fst & Snd, Code interview question
    [React GraphQL] Pass Parameters to urql's useQuery React Hook
    [Algorithm] Find first missing positive integer
    [Algorithm] Serialize and Deserialize Binary Tree
    [Algorithm] Count Negative Integers in Row/Column-Wise Sorted Matrix
    paip.c++ qt 共享库dll的建立
  • 原文地址:https://www.cnblogs.com/cxc1357/p/12498239.html
Copyright © 2011-2022 走看看