初识JS,及其语法函数的使用

  1. javascipt
    初级(es5 ecmascript5 ecmascript6 7 8)
    中级 内置对象 自定义对象 dom bom 事件流 逻辑算法 ajax(重点 原理)
    高级 继承 原型链 设计模式
    javascript作用: 前端html页面的交互,可以实现 效果(动画,操作效果) 数据展示 数据验证 访问数据 (小游戏开发 api接口访问实现(天气预报 地图api ))等等

初级:
javascript编程语言如何嵌入到网页
1.内嵌写法 head body里面
以script标签的方式去写入
2.外部引入
head body 内部进行引入script标签

标签内部注释:
ctrl+shift+/ 多行注释
ctrl+/ 单行注释

在script标签内部写入可执行代码:

  1. es5语法:
    数据类型: 6个数据类型
    数字: Number
    字符串:String
    真假型:Boolean
    对象型:Object
    空值引用:Null 占位置 没人
    未定义类型:undefined

对象型细化:
函数类型:Function
日期类型:Date
数组类型:Array
自定义对象:{}

以上的六种数据类型可以分为两种大类型:
1.值类型 number boolean Null undefined (占用的空间大小固定不变)
2.引用类型 Object string (占用的空间位置大小可变 存放在堆种 指针引用)

面试可能会问数据类型的强制转化:(什么是装箱什么是拆箱)
装箱: 值类型转化引用类型
拆箱: 引用类型转化值类型
至于用什么方法 后边再说:

  1. js 如何声明变量(定义变量)
    小常识: 变量:可变的量 可写可读
    常量:不可变的量 只读
    声明变量的关键字:var 一个var 全部声明: 但是js严格区分大小写:
    例如java : int a=10; float num=1.0; bool n=true;

js里面声明变量的语法规则是:
var 变量名称 是否初始化(是否给值):

变量的命名:
驼峰命名: UserName
帕斯卡命名: userName
带符号 _ user_name
不要重数字

  1. 函数
    (方法)
    js里面 主动为方法 被动为事件 都是调用函数

函数的关键字: function

如何声明函数:
function 函数名称(){}
功能: 代码的封装
//常规函数

function  method(函数的参数列表){
       /*
       * 代码区域
       * */
}
1.具名函数     -----这种函数具有声明提前
 function  method(函数的参数列表){
           /*
           * 代码区域
           * */
  }
2.不具名函数(匿名函数)  --没有声明提前
 var fun=function (){

 }

 (function () {

 })
 函数的执行
 具名函数执行:  函数名称();
 匿名函数:
 //自执行函数
 (function () {
         console.log("匿名函数执行");
 })();

  var fun = function () {
         console.log("匿名函数执行");
     }
  fun();
  函数还可以分为  带参函数   函数具有参数列表
   function User(a,b,c){
          console.log(a,b,c);
      }
      User(1,true,3);
      function UserName(){
          //函数的参数列表对象上
          //arguments  是个集合类型
          //length  属性  代表参数列表的长度
          //  key:value   键值
          console.log(arguments[0],arguments[1]);
      }
      UserName('小明','男');

      var fun2=function (a,b,c){
          console.log(a,b,c);
      }
      fun2(1,2,3);

      var fun3=function (){
          console.log(arguments);
      }
      fun3(1,2,3);


      (function (a,b){
          console.log(a,b);
      })(1,2);

      (function (){
          console.log(arguments);
      })(1,2);
  函数可以分为有无返回值
  function Ifon() {
        //函数代码执行完成之后  返回 return  值(任意类型)
        return '你好';
    }
   console.log(Ifon());

   var fun4 = function () {
        return true;
    }
    var val = fun4();
    console.log(val);

    var num=(function (){
        return 100;
    })();
    console.log(num);
  1. 变量的作用域:
    1.局部变量 (作用于当前的代码块区域) 定义的局部变量不会出现在window
    2.全局变量 (整个作用域) 定义的全局变量默认属域window

  2. 如何检测数据类型
    使用关键字: typeOf
    instanceof 判断类型的 用于引用类型

  3. 数据类型的强制转化 装箱拆箱

//创建引用类型
var str='abc'; //值类型
//转化引用
var str_1=new String(str);  //String 类

//转化为值类型
console.log(str_1.toString()); //拆箱

/*
*  数字类型和字符串类型的转化
* */
var s="1234.1111";
console.log(parseInt(s));  //转化为数字类型  取整
console.log(parseFloat(s));  //转化为数字类型

//parseInt  parseFloat  也可以使用它去符号  符号在数字的后边
var money='¥999.999';
console.log(parseFloat(money)); //NaN  不是个数字  not a number

var num=123;
console.log(typeof num.toString());
/*
* 值类型有长度吗 有长度属性
* */
var a=10;
console.log(a.length);
var b="abcdef";
console.log(b.length);
  1. 闭包
    概念: 把局部变量闭包成当前作用域的私有变量 —闭包
function Method() {
    var num = 1;//闭包变量
    //闭包函数
    return function () {
        num = num + 5;
        console.log(num);
    }
}
var fun = Method();
fun();
fun();
fun();
fun();

优点:把局部变量拿到作用域的外部使用。
缺点:闭包的变量会存到内存里面 , 大量使用闭包会导致内存泄漏。
做开发 尽量避免使用闭包

  1. 垃圾回收机制:
    概念:指的是方法内部的局部变量在使用完成之后 自动回收,下次调用函数的时候会重置

如果通过闭包 没有自动回收 要进行手动回收

  1. js里面的运算符 结构语句
    算数运算符 + - * / % = == === ++ –
    = == ===
    =赋值 == 判断两边值相等 但不限定类型 === 恒等 判断两边值和类型相等

    ++自增+1 --自减-1 前置还是后置
    前置是先自增或自减在运算 后置是先运算 在自增自减

逻辑运算符 &&两者都 || 两个满足其一 ! 取反面
数字里面 0为false 非0为true

比较运算符 > < >= <= !=

逻辑结构 (条件)

  if(){}
  if(){}else{}
  if(){}else if(){}else{}

三元运算符: 简写版的逻辑结构: 可以使用到方法内部
条件?true:false

选择结构

  switch(属性){
    case: break;
    case: break;
    case: break;
    default: break;
  }

循环语句:

  for  循环
      for(;;)   死循环   1.变量  2.条件   3. 变量自增或自减
      {

      }
  while(){}  先判断后执行
  do{} while()  先执行后判断  至少执行一次
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值