zoukankan      html  css  js  c++  java
  • javascript

    Js

    1. js介绍

    Js全称叫javascript,但不是java,他是一门前台语言,而java是后台语言。

    Js作者是布兰登艾奇。

    前台语言:运行在客户端的

    后台语言:跟数据库有关的。

    1. 能干什么?

    页面特效,开发页面游戏,后台开发等等。

    1. jsECMAscript的关系

    ES不是语言,是js的标准,我们学习js得按es的标准学习。

    1. 前端的三个层次

    Html  结构层

    Css  表现层

    Js   行为层

    1. Js写在哪里

    因为jsphp都是脚本语言,js写在script这个标签里php写在<?php>标签里。

     变量

    变量:可以改变的量,往往用英文字母代替变量,并且区分大小写。

    变量的定义(声明): var 加 字母  var a   我声明了一个变量叫a

    变量的用途:变量其实是一个容器,起到临时存储数据的作用。

    通过=进行赋值。 var a=12;

    1. js语言的输出

    alert() 这是js中的一个方法 弹出框

    console.log() 浏览器控制台输出,用于代码测试

     

    document.write() 在浏览器中写出

    1. js的注释

    (1) 单行注释 //

    (2) 多行注释  /*   内容    */

    1. 常量 不变的量

    汉字  数字  往往当做值使用。除了数字之外 要带引号””   ‘’

     

    红色的报错,说雅宁是一个变量,但是这个变量没有声明。

     

    说明有这个变量,但是没有赋值。

    变量起名的规则:不能使用汉字 区分大小写  不能特殊符号开头除了_  $

    _a  √    -a  ×   a3   √    3a   ×

    带引号和不带引号

    带引号的 是什么就输出什么 ----叫字符串

    变量不是 变量输出的是他后面的值 如果没有赋值就是undefined

     

    带引号的45字符串,用+ 只是拼接 没带的是数字 +是四则运算

    Js的关键字  var function

    1. js语言的四则运算

    +

    纯数字之间就是加法  3+6

    和字符串之间   + 就是拼接

    -

    纯数字是减法

    和字符串之间   - 还是减

    *

    纯数字还是乘法

    和字符串之间 还是乘

    /

    纯数字是除 和字符串还是除

    减乘除 三者有隐式转换的能力。在计算的过程中 将字符串强制转成了数字。

    %

    取余数  

    数字

    整数(整型)和小数(浮点型)

    parseInt() 将字符串强制转换成整型  parseFloat() 将字符串强制转换成浮点型

     

     

    代码执行顺序是从上往下。一个模块一个模块的执行。

    变量提升:浏览器的功能,

     

    Js代码执行

    Js代码执行前,浏览器会给他(js)一个全局环境,叫window全局作用域)。在window下浏览器找到所有的带varfunction的关键字然后给他们分配内存地址。不管你赋值没赋值,浏览器告诉所有的子模块,这个东西存在了。这种能力叫变量提升。

     

     

    变量的值

    我们学了两个了,一个是字符串,数字。不管是字符串还是数字,后面的值统统称为数据。

    数据的类型有哪些?

    字符串  数字    数组   json   对象  布尔  null  undefined  函数

    基本和复合类型

     

     

    运算

    1.四则运算 + - * /在一起 先算* / 后算加减

    2.逻辑运算 或(||) 且(&&) 非(!)   结果是布尔  truefalse

    3.比较运算  > >= < <= !(取反)  == (双等号)

    = 是赋值运算   结果是truefalse

    === 全等  数据的类型和值都一样  不全等于 !==

     

    == 也有隐式转换的能力

     

     

     

    Js代码执行前,浏览器会给一个全局作用域window

    Window分两个模块 一个是存储模块 一个是执行模块

    存储模块 找到所有的varfunction 关键字 给这些变量添加内存地址

    执行模块,代码从上到下执行,遇到变量就会去存储模块查找,有和没有

    有就看你赋值没有,赋值了就是后面的值 没有赋值就是undefined

    没有 结果就是xxx is not defined

     

    1. parseInt()
    2. parseFloat()

    遇到第一个字节是非数字就结束了。

    1. var a=”hello world”

    a这个变量是字符串了,对于里面的每一个字母来说,他是字节。里面有11个字节。

    字节总数用length表示。

    4

    符号运算  

    +    字符串拼接

    .     表示  ”的“

     

    对于点运算 点前面的叫对象    点后面的叫属性和方法。

    属性和方法的区别?

    1. a.length  length 是属性
    2. a.way()   way() 是方法

    5

    条件语句

    如果  否则   if  else

    If(条件){

    执行模块一

    }else{

    执行模块二

    }

     

    多个条件

    从大到小

    三元(目)运算 

    条件?语句1:语句2

     

    6.自加和自减

    = 赋值运算 他的顺序是从右往左  从后往前

     

    i++ 返回的是自增之前的值    先利用再加

    ++i 返回的是自增之后的值    先加再利用

    i--

    --i  

    1. 变量提升

    变量提升是浏览器的一个功能,在运行js代码之前,浏览器会给js一个全局作用域叫window

    window分两个模块,一个叫内存模块,一个叫运行模块,内存模块找到当前作用域下的所有带varfunction的关键字,执行模块执行js代码,从上到下执行,遇到变量就会通过内存地址去查找这个变量,有和没有这个变量。有这个变量就会看赋值没赋值,如果赋值就是后面的值,如果没有赋值就是undefined,如果没有找到就说这个变量 is not defined

    1. 条件语句

    If(条件){

    语句

    }else{

    语句

    }

    {}   js我们把他叫代码块。如果代码块里的内容没有执行完,语句不会向下执行。

    代码块是一个独立的整体。如果js中某一条语句出错,那么就会在此终止不会向下执行。

    1. 循环语句

    循环,就是对一个整体进行逐个查找。

    循环

    1. 从什么开始    
    2. 查找的步长
    3. 结尾数字

    计算机对数据的计算不是从1开始,从0开始,也就说0代表第一个数据

     

    我们把用数字去代替字节的方法,将数字叫做这个字节的下标(索引)

    循环语句的格式

    循环用for

    for(){}

     

     

    我们最后发现i5,但是i应该是for循环的代码块中的变量。但是for循环之外也可以使用,我们把这种现象叫做内存泄露。需要清内存。

    1

    12

    123

    1234

     

    Js处理数据的目的就是将数据渲染到页面中,而渲染的数据的本质是字符串。

    其他数据的底层都是字符串。

    学习到最后,都是在处理数据,渲染数据的最本质方法就是字符串拼接。

    后期的数据渲染的方式都是由字符串衍变而成。

    4.加号的使用

    + 字符串拼接

    变量和字符串之间都需要使用+进行连接。

    算法

    案例1 1-10的和

     

     

    弹出框的三种形式

    1. alert()  警告框
    2. 输入框 prompt()  
    3. 确认框  confirm()

    案例2 找出1-100之间即能被5又能被6整除的数字

     

    我们把这种一个一个列举出来的方法叫穷举法。

    案例3 1-20的质数

    质数 只能被1和他本身整除的数字 最小质数是2

    案例4 如何取到375中的百位  十位 个位?

     

    If条件的种类

    If(条件){}

     

    If 里面的条件只是一个字母

    1. m=true
    2. Mnull的关系

    Boolean中的truefalse 我们可以用数字中的0和非0代替。

    上面if(m) 如果mtrue

                  如果m是非空

    If里面的条件

    关系运算  > >= < <=  ==  ===  !=

    If(m=5){}

     

    =  js中是赋值的意思,并且这种运算从右往左执行。

    将数字5赋值给变量m

     

    逻辑运算

    ||   &&  

     

    1. js的本质就是处理数据。数据来自于后台的数据库。

    所以变量就起到一个临时存储数据的作用。

    ECMAScript制定了js的数据类型。

    数据类型有哪些?

    1. 字符串   String
    2. 数字    Number
    3. 布尔    Boolean
    4. Null     
    5. Undefined   
    6. Object   对象

    Array 数组   json   function  函数  日期 数字对象等

    上面红色的叫基本数据类型。

    Var s=”hello”; var s=12; var s=true; var s=null; var s=undefined;

    基本数据类型就是简单的赋值。

    引用(复合) 数据类型

    Var s=[“hello”,123,true,”张三”] 数组

    Var json={“name”:”zhangshan”,”age”:23}

    引用数据类型  他是将内存地址赋值给变量

     

    基本数据就是简单的赋值  引用数据类型是将数据的内存地址赋值给变量

    栈内存 就是环境。

    堆内存  就是存代码,数据的仓库。

    1. js在执行前 浏览器会给他一个环境,叫window 全局作用域。

    Alert()  prompt()  confirm() 都是方法。

    怎么找这个方法和属性归属?

    1. arr.find()   find() arr
    2. 没有带.   在谁的环境 是谁的。

    判别变量的数据类型 typeof 变量名 返回的是数据类型

    window下的方法和属性我们把他叫全局方法或全局属性。

    1. eval()  将字符串转化为js代码

    表达式  =的都叫表达式

    语句

    但凡从后台拿来的数据,都是字符串,不管张成什么样。

    Var a=”[12,23]”;   var a=”12”

    Eval()  括号里面必须填东西,并且必须是字符串,将这个字符串转换成对应的js代码。

    Eval(“alert(12)”)  ------> alert(12)

    Eval(“()”) 如果eval方法中带() 就会强制的将括号里的表达式转换成对象。

     

    尤其是{}  []  eval()里面必须加()

    1. isNaN()   is not a number  

    ()里面的东西不是数字的时候 返回true  数字返回false

    isNaN() 具有隐式转换的功能

    隐式转换的有哪些   - * /  == isNaN()

    1. Number()将其他类型强制转换为数字
    2. parseFloat() 将其他类型转化为浮点数
    3. .parseInt()将其他类象强制转换为整数
    4. String()  将里面的内容转换成字符串

     

     

  • 相关阅读:
    自己写的DBHelper感慨颇深
    23种设计模式:观察者模式,第一次对观察者模式理解的这么通透。
    自己用心写的 存储过程分页 给自己的平台用
    开篇成长的开始[废话一把]
    C# 中i++在ref参数调用下的有趣现象
    点点滴滴的成长[2011111]:理解C#修饰符
    点点滴滴的成长[2011114]:自定义config文件
    扩展方法在Json字符串转化中的应用
    jquery学习二:jquery性能优化
    javascript系列1:函数
  • 原文地址:https://www.cnblogs.com/aaaaap/p/9878097.html
Copyright © 2011-2022 走看看