·首先,来简单的说一下,JS是啥,JS是JavaScript的简写,是

基于浏览器的
基于对象的
事件驱动
脚本语言
·那么JS有什么用呢?ta可以实现:
表单验证
添加动画效果
动态更改页面内容
Ajax网络请求
·那么怎么在网页中使用它呢?
可以有三种方式:
1.Html中内嵌
<button onclick="javascript:alert('young man..骗你的')">屠龙宝刀点击就送!</button>
2.在Html页面中直接使用JS
<script type=“text/javascript”>
JavaScript语句;
</script>
【注意事项】页面中JS代码与引用JS代码可以嵌入到Html中任意位置,但是位置不同会影响到JS代码的执行顺序。例如script标签在body前边会在页面加载之前执行JS;
②引用外部JS文件,使用
<script src=" .js" language=“javascript”>
</script>
引用外部JS文件的script标签必须成对出现,且内部不能有任何代码
·下面在来介绍一下JS中的变量:
JS的变量声明不同于C、C++、JAVA之流,要用int long char之类的
①JS中所有变量类型声明,均使用var关键字。变量的具体类型取决于对变量赋值得类型
②同一变量可在多次不同赋值时,改变变量的数据类型
var width = 10; width为整形变量
var width =“11”;width被改为字符串类型
③变量可以使用var 也可以省略
④同一变量名可以多次用var声明,但没任何含义,不会报错。第二次之后的声明,只会被理解为赋值
虽然只用var定义变量,但JS中的变量也是有数据类型的:
undefined 未定义,用var定义的变量未赋值。var a;
Null 代表特殊的变量类型。唯一值为null,表示为空的引用。空的对象,空的数组
number 数值类型。可以使小数,也可以是整数。
string 字符串,用双引号“” 或单引号' '包裹的内容,称为字符串
boolean 真假,可选值 true /false
object 复杂数据类型
说到这里,当然要强调一下变量的命名规范:
变量名由字母数字下划线和$符,开头不能为数字,区分大小写
变量名命名要符合驼峰法则:
变量开头要小写,之后每个单词首字母大写;
 
·在JS中有几个常用的数值函数非常重要:
① isNAN 用于判断一个变量或者常量是否为NAN(非数值)
  这个非常非常绕
使用isNAN判断时会尝试使用number()函数进行转换,如果能转换为数字,则为不是非数值,结果为false;
例如:
“11122”纯数字字符串,false “ ”空字符串,number转化为0,false “ 2la44”true
true / false 布尔类型,false
②Number()将其他类型转化为数值类型
[字符串类型转数值]
》》字符串为纯数值字符串,会转为对应的数字“111”->111
》》字符串为空时,会转为0
》》字符串包含其他非数字字符时,不能转换“111a”->NaN
[布尔类型转数值]
》》true-> 1
》》false-> 0
[Null转数值]
null->0
[undefined转数值]
undefined-> NaN
[Object]
*先调用Value of方法确定函数是否有返回值,再根据上述情况判断
③parseInt()将字符串转为数值
》》为空字符串 结果NAN
》》纯数值字符串能转,若有小数,小数点后抹掉,不进行四舍五入
》》包含其他字符字符串,会截取第一个非数值前的数值部分,如果开头字母,则结果为NaN
“123a33”-》123 “a123”-》NaN
只能转字符串类型,boolean/null/undefined 均为NAN
④ parseFloat()将字符串转为数值,使用方式同parseInt
但转化小数字符串时保留小数点;转化整数字符串时 ,保留整数。
“123.5”->123.5 “125”->125
⑤typeof 用来检测变量数据类型
未定义--返回Undefined
字符串---返回String
true / false ---返回boolean
数值---返回Number
对象/null --返回object
函数--返回function

·JS中的运算符

js中的运算符跟C、java里的基本一样,没有特别注释的用法没什么区别

算术运算
+ 加、- 减、* 乘、 / 除、 % 取余、++ 自增、-- 自减

赋值运算
= 赋值
+=:a+=5相当于a=a-5;但前者的执行效率快
-=
*= /= %=
关系运算
== 等于、=== 严格等于、 != 不等于、>、<、>=、<=
===:严格等于,类型不同返回false。类型相同,再进行下一步判断
==:类型相同,判断。类型不同,类型不同,尝试将等式两边均用Number()函数转为数字,在判断。例外:null==Undefined 成立 null===Undefined 不成立
条件运算符(多目运算)
a>b?true:false
有两个关键符号: ?
当?前边的运算结果为true时,执行:前边的代码
当?前边的运算为false时,执行:后边的代码;
可以多层嵌套
逻辑运算符
&&、||、!
重点是运算符的优先级,弄不清楚时,一定要加括号!
()
! ++ --
* / %
+ -
> < <= >=
== !=
&&
||
赋值运算符= += -= %=
搞清楚这些才能往下深入学习JS,而不会被弄的团团转。
 
 
 
 
 

JS基础——入门必备的更多相关文章

  1. JS基础入门篇(三十五)—面向对象(二)

    如果没有面向对象这种抽象概念的小伙伴,建议先看一下我写的JS基础入门篇(三十四)-面向对象(一)

  2. JS基础入门篇(二十七)—BOM

    虽然上次写到js基础篇(二十四),这次直接写到(二十七).是为了提醒自己中间有几篇没写.特此说明一下啊. 1.window.open() 使用a标签呢,点击一下a标签页面才会跳转,有时候我们需要做的操 ...

  3. egg.js基础入门

    之前一直使用koa, 刚刚接触egg, 做了一些入门的笔记 准备工作 1  首先安装脚手架,,并创建项目. $ npm i egg-init -g $ egg-init egg-demo --type ...

  4. Nuxt.js 基础入门教程

    原文链接 Vue 开发一个单页面应用,相信很多前端工程师都已经学会了,但是单页面应用有一个致命的缺点,就是 SEO 极不友好.除非,vue 能在服务端渲染(ssr)并直接返回已经渲染好的页面,而并非只 ...

  5. JS基础入门篇(六)— 数据类型

    1.数据类型 数据类型:我感觉就是对数据的种类进行分类.就好比把人分为儿童,青少年,中年,老年一样. 基础数据类型: Number(数字),String(字符串),Null(空),Undefined( ...

  6. 零基础入门必备的Linux命令和C语言基础

    文件和目录(底部有视频资料) cd /home 进入 '/ home' 目录' cd - 返回上一级目录 cd -/- 返回上两级目录 cd 进入个人的主目录 cd ~user1 进入个人的主目录 c ...

  7. Underscore.js基础入门

    公司产品集成了对Underscore.js,所以需要对这个库有一定的了解.通过查阅资料,发现这个库主是对Array和JSON的处理支持.通过Underscore.js库,可以方便的对Array和JSO ...

  8. gulp.js基础入门

    安装 Node 去 nodejs.org 根据系统选择性按照教程安装Node. 创建项目 创建项目文件夹 进入项目文件夹 初始化项目 使用npm命令:npm init,根据提示完成. 安装 Gulp ...

  9. JS 基础 入门

    JS做弹窗效果 //单行注释/*多行注释*/// 网页 标签语言    js语言是脚本语言/* 数据类型: 容器 1.整型  (int)  2.小数类型: float: 单精度的小数: double: ...

随机推荐

  1. SSH登录与增删改查demo详解+源代码

    点击下载,测试绝对可用SSH整合框架登录加增删改查demo 下载地址:http://download.csdn.net/detail/qq_33599520/9784679   一.框架概述 spri ...

  2. 【微信公众平台SDK(链式调用)】经过半个月的迭代,今天抽空写了个Demo

    这个项目是在实际开发中逐渐完善的,开发过程基于ASP.Net Core 1.1,实际生成会兼容Net4.5. 写有完善的代码提示,怎么用就不多做解释了,引用好实例中的命名空间基本上就可以通过智能提示了 ...

  3. Hibernate写配置文件无提示信息解决

    把Hibernate的相关jar包引入工程后,在配置hibernate.cfg.xml时没有提示信息,对于开发人员来说,那么多标签,标签有那么多属性,全部都记住显然是不可能的,遇到这种情况是很头疼的事 ...

  4. @RequestParam--SpringMVC 注解系列文章(一)

    概述 RequestParam 注解是使用 SpringMVC 开发过程中,比较常用的一个注解,用于映射请求参数. 代码 package rex.springmvc.handlers; import ...

  5. Javascript:面试经典套路-查重(reduce)

    今天在偶然间查看到了一段代码,代码使用了很短的篇幅完成了字符串统计相同字符次数这个经典面试题,其中用到了reduce这个方法,网上查了查,没有查到什么有价值的东西,导致浪费了我一些时间才看懂,现将我的 ...

  6. (Facebook开源项目)Fresco:一个新的Android图像处理类库

    在Facebook的Android客户端上快速高效的显示图片是非常重要的.然而多年来,我们遇到了很多如何高效存储图片的问题.图片太大,而设备太小.一个像素点就占据了4个字节数据(分别代表R G B和a ...

  7. 百度api的使用

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  8. HTTP协议(四)

    第一步:新建一个header.php页 <?php header('Location:http://www.baidu.com');//默认是302重定向 ?> 第二步:分析 如何制定重定 ...

  9. 让Xcode日志输出中文

    有的时候xcode打印后台返回的日志,明明后台返回的是中文,但是在xcode的日志里面却不是中文,而是unicode编码,这个就比较坑,因为看不到内容. 其实解决办法有两种: 第一种就是给xcode安 ...

  10. javaWEB与Session

    HttpSession(*****)1. HttpSession概述  * HttpSession是由JavaWeb提供的,用来会话跟踪的类.session是服务器端对象,保存在服务器端!!!  * ...