zoukankan      html  css  js  c++  java
  • JS基础知识简介 阿呆啊

    使用js的三种方式
    1、HTML标签内嵌js
    <button onclick="javascript:alert(真点啊)">有本事点我</button>
    不提倡使用
    2、HTML页面中直接使用js
    <script type="text/javascript">
    js代码
    </script>
    3、引用外部js文件
    <script language="JavaScript" src="js文件路径">
     
    </script>
    【注意事项】
    1、页面中js代码和引用js代码可以嵌入到HTML页面任何位置。但是,位置不同会影响到js代码的执行顺序(script标签在body前面,会在页面加载前执行js代码)
    2、页面中js代码,使用<script language="JavaScript" src="js文件路径"></script>
    3、引用外部js文件的script标签必须成对出现,且标签内部不能有任何代码
     
    【js中的变量】
    * 1、js中的变量声明的写法:
    * var width = 10;//使用var声明的变量,只在当前函数作用域生效
    * width = 10;//不使用var,直接赋值生成的变量,默认为全局变量,整个js文件有效
    * var a,b,c=1;同时声明多个变量,变量之间用英文逗号分隔。但赋值需要单独赋,例如上式中只有c赋值为1,ab为undefined(未定义说明这是一个变量)
    * 【声明变量注意事项】
    * ①js所有变量类型声明,均使用var关键字。变量的具体数据类型,取决于给变量赋值的执行
    * ②同一变量可以在多次不同赋值时,修改变量的数据类型
    * var width = 10;//width 位整形变量
    * width="哈哈";//width被改为字符串类型
    * ③使用var声明的变量,只在当前函数作用域生效,不使用var,直接赋值生成的变量,默认为全局变量,整个js文件有效
    * ④同一变量名可以多次用var声明,但是并没有任何含义,也不会报错,第二次之后的声明只会被理解为赋值
    * 2、变量的命名规范
    * ①变量名只能由字母数字下划线和$符号组成
    * ②开头不能是数字
    * ③变量区分大写小写,大写字母与小写字母为不同变量
    *
    * 3、变量名命名要符合驼峰法则:
    * 变量开头为小写,之后每个单词首字母大写;
    * 4、JS中的变量的数据类型
    * undefned:未定义,用var声明的变量没有进行初始化赋值 var a;
    * null:代表特殊的变量类型,表示空的引用。例如:空的对象,数组,
    * boolean;真假,可选值ture/false
    * number:数值类型。可以是小数,也可以是整数
    * strig:字符串类型。用""或''包裹的内容,成为字符串
    * 5、常用的数值函数
    * ①isNaN:用于判断一个变量或常量是否为NaN(非数值)
    * 使用isNaN,会尝试使用Number()函数进行转换,如果能转换为数字,则不是非数值,结果为false
    * "111"纯数字字符串,false "" 空字符串, false "1a" 包含其他字符 ture
    * ture/false布尔类型,false
    * ②Number()将其他类型转化为数值类型
    * 【字符串类型转数值】
    * >>>字符串为纯数字字符串,转为对应数字
    * >>>字符串为空字符串时转为0
    * >>>字符串包含其他非数字字符时,不能转换 "11a"->NAN
    * 【boolean】
    * true->1 fales->0
    * 【null 和 undefined】
    * null ->0 undefined->NAN
    * 【object】
    * 先调用valueof方法,确定函数是否有返回值,再根据上述情况判断。
    */
     
    /*
    * document.write()
    * 输出语句,将write()中的内容打印在浏览器上
    *
    *
    * 使用注意:除变量、常量以外的任何内容,打印室必须放到""中
    * document.write("右手中纸牌:"+right+"<br />"+"<br />");
    * 打印的内容同时由多部分组成,之间用+连接
    *
    * parseINT:将字符串转换为数值
    * >>>空字符串,不能转,结果NAN
    * >>>纯数值字符串,能转。"123"->123 "123.5"->123(小数转换时直接抹掉小数,不四舍五入)
    * >>>包含其他字符的字符串。会截取第一个非数值字符的前面部分 "123a456"->123 "a123b456"->NAN
    * parseint只能转string类型,Boolean/null/undefined 均为NaN
    *
    * parsefloat:将字符串转为数字:使用方式同parseint 但是当转换小数字符串时,保留小数点,转换整数字符串时,保留整数。
    *
    *
    * typeof用来检测变量数据类型
    * 未定义>undefined 字符串->string true/false->boolean
    * 数值->number 对象/null->object 函数->function
     
     
    算术运算
    + 加、- 减、* 乘、 / 除、 % 取余、++ 自增、-- 自减
    +:有两种作用,链接字符串/加法运算;当+两边均为数字时,进行加法运算,当+两边有任意一边为字符串时,进行字符串连接,连接之后的结果仍为字符串
    ++:自加运算符,将变量在原有基础上加一
    --:自减运算符,将变量在原有基础上减一
     
    赋值运算
    =赋值 += -= *= /= %=
     
    +=:a+=5;相当于a=a+5;但是,前者的执行效率要比后者快
    关系运算
    ==等于、===严格等于 !=不等于、>、<、>=、<=
     
    ===:严格等于:类型不同,false;类型相同,再进行下一步判断;
    ==:等于,在类型相同时,同===,在类型不同时,尝试将等式两边用number函数转为数字再判断;
    null==undefined√ null===undefined×
     
    条件运算符(多目运算)
    a>b?true:false
     
    可以多层嵌套
    有两个关键符号?和:
    当问号前面的部分运算结果为true时,执行:前面的代码,当问号前面的部分运算结果为false时,执行:后面的代码
     
    逻辑运算符
    &&与、||或、!非
     
     
    [运算符优先级]
    ()
    ! ++ --
    % / *
    + -
    > < >= <=
    == !=
    &&
    ||
    各种赋值 = += *= /= %=
     
    */
     
    /*【n++与++n】
    * n++先使用n的值计算,再把n+1
    * ++n先把n的值加一,然后再用n+1之后的值计算;
    * 相同点:不论n++还是++n在执行完代码后均会把n加一
     
    注意:
    2、if()中的表达式,运算之后的结果为:
    ①Boolean: true真 false假
    ②String:非空字符串为真,空为假
    ③Null/NaN/Undefined:全为假
    ④Object:全为真
    ⑤number:0为假,一切非0均为真
    3、else结构可以根据条件省略;
     
    JS中的循环结构
     
    【循环结构的步骤】
    * ①声明循环变量
    * ②判断循环条件
    * ③执行循环体
    * ④更新循环变量
    *
    * 【JS循环条件支持的数据类型】
    * ①Boolean: true真 false假
    ②String:非空字符串为真,空为假
    ③Null/NaN/Undefined:全为假
    ④Object:全为真
    ⑤number:0为假,一切非0均为真
     
    var n = 1;//声明循环变量
    while (n<=10){//判断循环条件
    document.write("打印<br/>");//执行循环体
    n+=2;//更新循环变量
    }
     
     
    do while循环特点,先执行后判断,至少执行一次
     
    【for循环】
    1、for循环有三个表达式:①定义循环变量②判断循环条件③更新循环变量‘三个表达式均可省略,两个;缺一不可。
    2、for循环特点:先判断再执行
    3、for循环三个表达式之间均可以由多部分组成,之间用逗号分隔,但是第二部分判断条件用&&连接,最终结果需要为真/假
     
     
     
    函数

    [函数的声明及调用]

    1、>>>函数声明的格式:
    function 函数名(参数1,参数2,……){
    // 函数体
    return 结果;
    }

    >>>函数调用的格式:
    直接调用:函数名(参数1的值,参数2的值,……);
    事件调用:事件名=函数名();

    2、函数声明的几点强调:
    ① 函数名的声明,必须符合小驼峰法则(首字母小写,之后每个单词首字母大写);
    ② 参数列表,可以有参数,可以无参数。分别称为有参函数,无参函数;
    ③ 声明函数时的参数列表,称为“形参列表”(变量的名);
    调用函数时的参数列表,称为“实参列表”(变量的值);
    函数中,实际有效的参数取决于实参的赋值,未被赋值的形参,将为Undefined;
    ④ 函数如果需要返回值,可用return返回结果。
    调用函数时,使用var 变量名=函数名();的方式,接受返回结果;
    如果函数没有返回值,则接受的结果为Undefined。

    ⑤ 函数中变量的作用域:
    在函数中,使用var声明的变量,默认为函数局部变量,只在函数内容能用;
    不用var声明的变量,默认为全局变量(函数中的全局变量,必须在函数调用后,才能使用)。
    函数的形参列表,为函数局部变量,只在函数内部能用;

    ⑥ 函数声明与函数调用,没有先后之分。即,调用语句可写在声明语句之前。

    JS操作BOM

    重点【window对象的常用方法】
    * >>>window对象中所有方法均可以省略前面的window. 比如close();
    * 1、prompt:弹窗接受用户输入:
    * 2、alert:弹窗提示
    * 3、confirm:带有确认取消按钮的提示框
    * 4、close:关闭当前浏览器选项卡
    * 5、open:重新打开一个窗口
    * 6、settimeout设置延时执行
    * 7、setinterval:设置定时器,循环每隔N个毫秒数执行一次
    * 两个参数:需要执行的function / 毫秒数
    *
    * 8、cleartimeout:清除延时
    * 9、clearinterval:清除定时器
    * 传入参数:调用setInterval时返回一个ID,通过变量接收ID,传入clearInterval;

     
     
     
     
     
  • 相关阅读:
    高斯消元
    逻辑运算符之优先级&&and、or
    康托展开
    关于bootstrap的双层遮罩问题
    写好页面在内网内访问
    swiper插件的一些坑
    第一篇博客
    poj 3415 Common Substrings
    poj 1509 Glass Beads
    poj 3260 The Fewest Coins
  • 原文地址:https://www.cnblogs.com/adaia/p/6719946.html
Copyright © 2011-2022 走看看