文档章节

我认为一些必知的JavaScript基础知识

p
 peakedness丶
发布于 11/02 16:29
字数 1512
阅读 21
收藏 0

JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。

JS作用:表单验证,减轻服务端的压力;添加页面动画效果;动态更改页面内容;Ajax网络请求。

下面简单介绍JS的基础知识:

基础知识

一、基本结构

<script type="text/javascript">

alert("hahaha");

</script>

二、使用JS的三种方式

 1、直接在HTML标签中,使用事件属性,调用JS代码:

  <button onclick="alert('点我');">点我!</button>

 2、在页面的任意位置,使用script标签,插入JS代码。

  <script type="text/javascript">

    alert("hahaha");

  </script>

 3、引入外部JS文件:

 <script src= "js/01.js" type="text/javascript"></script>

** [**注意事项]

  ① JS代码可以放在页面的任意位置使用,但是放置的位置不同,将影响JS执行的顺序

  ② 引入外部JS的script标签中,不能再包含任何的JS代码。

三、JS中的变量

** 1、变量的声明**

   var num = 1;        // 使用var声明的变量,属于局部变量,只在当前作用于有效

   num = "hahaha";      // 不用var声明的变量,默认为全局变量,在整个JS文件中可用

   var a=1,b,c=2;    // 使用一行代码,声明多个语句。其中b为Undefined

**  [JS中变量声明的注意事项]**

  ① JS中声明变量的关键字只有一个var,变量的类型,取决于所赋的值;

   如果声明后为赋值,则为Undefined类型。

  ② JS中同一个变量,可以在多次赋值中,被修改数据类型;

    var num1=1;

    num = "字符串";

  ③ 变量可以使用var声明,也可以直接赋值声明。(区别:使用var声明的作用域为局部变量)  

  ④ 在JS中,一个变量可以多次使用var声明,后面的声明相当于直接赋值,没有任何作用;

  ⑤ JS变量区分大小写,大写和小写不是一个变量;

** 2、JS中的数据类型:**

  Undefined:使用var声明,但是没有赋值的变量

**  null:表示空的引用**

**  Boolean:真假**

**  Number:数值类型,包括整型和浮点型**

**  Object:对象**

 3、常用数值函数

  ① isNaN:用于检测是一个变量,是不是非数值(Not a Number);

   isNaN在检测时,会先调用Number函数,尝试将变量转为数值类型,如果最终结果能够转化为数值,则不是NaN。

  ② Number函数:用于将各种数据类型转为数值类型

   >>>Undefined:无法转换,返回NaN;

   >>>null:转为0;

   >>>Boolean:true转为1,false转为0;

   >>>字符串:

        如果字符串是纯数值字符串,可以转换,"123"-->123

        如果字符串包含非数值字符,不能转换,"123a"-->NaN

        如果是空字符串,转为0,""-->0 " "-->0

  ③ parseInt():将字符串转为数值类型

   如果是空字符串,不能转," "-->NaN

   如果是纯数值类型字符串,可以转换,且小数点直接舍去,不保留,"123"-->123 "123.9"-->123

   如果字符串包含非数值字符,则将非数值字符前面的整数进行转换,"123a"-->123 "a123"-->NaN

  ④ parseFloat():转换机制与java相同。

   不同的是:转换数值字符串时,如果字符串为小数则可以保留小数点,"123.5"-->123.5 "123"-->123

  ⑤ typeof():检测一个变量的数据类型。

   字符串->String  数值->number   true/false->boolean

   未定义->undefined  对象/null->object  函数->function

四、JS中常用的输入输出语句

 1、alert():弹窗输出

  2、prompt():弹窗输入

  接受两部分参数:① 输入提示内容;② 输入框的默认文本。(两部分都可以省略)

  输入的内容默认都是字符串。

 3、document.write("<h1>12345</h1> <h6>hahaha</h6>");

   在浏览器屏幕上面打印。

 4、console.log("hahaha");

   浏览器控制台打印。

五、JS中的运算符

 1、除号:无论符号两边是整数还是小数,除完后都将按照实际结果保留小数

  例如:22/10 --> 2.2

 2、===:要求等号两边的数据、类型和值都必须相同。如果类型不同,直接返回false

   ==:只判断两边的数据,值是否相等,并不关心等式两边是否是同一种数据类型

   !=:不等  !==:不全等

 3、&、| 只能进行按位运算,如果两边不是数值类型,将转为数值类型再运算;

  &&、|| 进行逻辑运算

 4、各级运算符的优先级别表:

分支与循环

一、if判断

 1、JS中的真假判断:

  ① Boolean类型:true为真,false为假;

  ② 数值类型:0为假,非0为真;

  ③ 字符串类型:""为假,非空字符串为真;

  ④ Null/Undefined/NaN:全为假;

  ⑤ Object:全为真。

 2、if判断:

  if(undefined) {
      console.log(true);
  } else {
      console.log(false);      
  }

二、循环

 1、switch

  switch结构的()中可以放各种数据类型:

  比对时,采用  "==="  进行判断,要求数据类型完全相等

var num=1;
  switch (num){
    case 1:
         console.log("dengyu");
         break;//前端全栈交流圈:866109386
    default://帮助1-3年前端人员,提升技术
         console.log("budeng");
         break;
  }

【JS中switch 与 Java中switch 的区别:】

 Java中switch不能判断区间,而JS中switch可以判断区间

switch (true){
            case num>=0 && num<10:
                    console.log(1);
                    break;
            case num>=10 && num<100
                    console.log(2);
                    break;
            default:
                    console.log(3);
                    break;
    }

 2、do-while

    do{

 

    }while (false);

 3、for循环

    for(var i=0;i<100;i++){ }

 4、例:输入一个数,判断其是否是正整数,如果不是正整数,提示输入有误,请重新输入;如果是正整数,反转输出这个数。

var num=prompt("请输入一个正整数:");
       var str="";
       if(parseInt(num) == num){
         while (num>0){
            var a = num%10;
             str += a;
             num = parseInt(num/10);
          }
          console.log(str);
       }else {
             console.log("您输入的数不是正整数!");
       }

喜欢的点个赞或者转发一下哦。

© 著作权归作者所有

共有 人打赏支持
p
粉丝 45
博文 129
码字总数 155269
作品 0
长沙
私信 提问
零基础的网站开发初学者如何系统的学习?

A.学习背景 开始网站开发,起先是从手机网站的UBB语法开始的,也因此有了深入学习的兴趣。为了让学习的热情膨胀,我有意的培养这一爱好 ,定位了自己要成为一名优秀的网站开发员的目标。 作为...

李佳顺
2012/12/25
0
3
结合个人经历总结的前端入门方法

作者:qiu deqing 链接:https://github.com/qiu-deqing/FE-learning 结合个人经历总结的前端入门方法,总结从零基础到具备前端基本技能的道路、学习方法、资料。由于能力有限,不能保证面面...

SomaLihq
06/27
0
0
javascript——从「最被误解的语言」到「最流行的语言」

JavaScript曾是“世界上最被误解的语言”,因为它担负太多的特性,包括糟糕的交互和失败的设计,但随着Ajax的到来,JavaScript“从最受误解的编程语言演变为最流行的语言”,这除了幸运之外,...

modernizr
2014/05/20
1K
12
JavaScript 和服务器端方向推荐书单(附简评)

我一直以来读书是获取知识最好的方式,很长时间以来,我都在博客维护了一个 推荐书单,最近又做了一些整理,为每本书都添加了简评,希望能对大家有帮助,当然如果能用我的推广链接购书就再好...

eapxuo
02/09
0
0
Limu:JavaScript的那些书

又好久没写东西了 ,写上一篇的时候还以为接下来的工作会轻松一些 ,结果未从我所愿呐 ,又是一阵忙碌。而这段时间穿插着做了很多12年淘宝校园招聘的前端面试 ,很多同学都有问到 ,学校里没...

随影求是
2012/03/15
0
0

没有更多内容

加载失败,请刷新页面

加载更多

hanlp在Python环境中的安装失败后的解决方法

Hanlp是由一系列模型与算法组成的javag工具包,目标是普及自然语言处理再生环境中的应用。有很多人在安装hanlp的时候会遇到安装失败的情况,下面就是某大神的分享的在python环境中安装失败的...

左手的倒影
12分钟前
0
0
【更新】Infragistics Ultimate UI for WPF v18.2(二):分类图

下载Infragistics Ultimate UI for WPF最新版本 Infragistics Ultimate UI for WPF是一款提供高速的网格和图表,轻松创建仿Office应用程序的WPF界面框架,从广度和深度两方面使得开发者在缩短...

电池盒
13分钟前
0
0
android沉浸式状态栏封装—教你玩出新花样

项目中我们有时候都要用的透明状态栏(这里也成沉浸式状态栏),今天介绍一个gyf-dev写的一个封装状态栏开源框架 效果图如下: 正文 从Android4.4开始,才可以实现状态栏着色,并且从5.0开始...

终端研发部
14分钟前
0
0
Java关键字之transient、native

transient Java中提供Serilizable接口,实现该接口的对象就可以被序列化。如果这个类的有些属性不需要被序列化,使用transient关键修饰字段即可。 native native关键字说明其修饰的方法是一个...

勇敢的飞石
15分钟前
0
0
canal 修改mysql数据后Java客户端无反应的问题解决方案

canal client例子: package com.study.canal;import java.net.InetSocketAddress;import java.util.List;import com.alibaba.otter.canal.client.CanalConnector;import com.al......

xtof
15分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部