一、使用JS的三种方式

1、在HTML标签中,直接内嵌JS(并不提倡使用)
<button onclick="alert('点你咋地')">点我</button>
    >>> 不符合w3c关于内容与行为分离的要求
 
2、在HTML页面中使用<script></script>包裹JS代码
<script type="text/javascript">
//JS代码                               
</script>                                     
      >>> script标签可以放到页面的任何位置
 
3、引入外部的JS文件:
    <script language="JavaScript" src="js/01.js"></script>
 
[注意事项]
① <script></script>可以嵌入到页面的任何位置。但是,位置的不同会导致JS代码的执行
     顺序不同
比如:<script></script>放到<body>前面,则JS代码会在页面加载之前就执行
 
② 引入外部的JS代码,<script></script>必须是成对出现的标签。而且,标签中不能再有
    任何的JS代码
 
/*
* JS中的多行注释。Ctrl+Shift+/
*/
// JS中的单行注释。Ctrl+/
二、JS中的变量

1、JS中变量声明的写法
var num=10;//使用var声明的变量,属于局部变量,只在当前作用域内有效
num=10;//不用var声明的变量,默认为全局变量,在整个JS文件中都有效
var x=9,y,z=10;//使用一行语句同时声明多个变量。上式中,y属于已声明,但是未
                                    赋值状态,结果为undefined
 
[声明变量的注意事项]
① JS中所有变量的声明,均使用var关键字。变量具体是什么数字类型,取决给变
             量赋值的类型
    
② JS中同一个变量,可以在多次不同赋值时,修改变量的数据类型
var a=10;//从初始声明时,a属于整数型;
a="哈哈哈";//重复赋值时,整数型的a被修改为字符串类型
 
③ 变量可以使用var声明,也可以不使用var声明。[区别]使用var声明为局部变量,
             不使用var声明为全局变量
 
④ 只用var声明,但是不赋值,结果为undefined
    例如:var a;//a为undefined
    但是,如果不声明也不赋值的a,直接使用会报错
    
⑤ 同一变量名可以多次使用var声明。但是,后面的var并没有什么用;第二次使用
            var声明时,只会被理解为普通
 
2、变量名的命名要求:
① 变量名,只能有字母、数字、下划线组成;
② 开头不能是数字;
③ 变量名区分大小写,大写字母与小写字母为不同变量;
  
3、变量名的命名规范:
① 要符合小驼峰法则(骆驼命名法):
     首字母小写,之后每个单词的首字母大写;
     myNameIs
② 或者使用匈牙利命名法:
     所有字母小写,单词之间用_分隔
     my_name_is
③ mynameis 能用,但是不规范
 
4、JS中的数据类型:
Undefined:未定义。已经使用var声明的变量,但是没有赋值
       Null:表示空的引用
Boolean:布尔类型。表示真假,只有两个值:true/flase
Number:数值类型。可以是整数,也可以是小数
String:字符串类型。用 "  " 或 '  ' 包裹的内容,成为字符串
Object:对象类型,后续讲解...
 
5、【常用的数值函数】
① isNaN():判断一个变量或常量,是否是NaN(not a num 非数值);
使用isNaN()判断时,会尝试使用Number()函数进行转换,如果最终结果能够
                转为数字,则不是NaN,结果为false
  
② Number()函数:将其他类型的数据,尝试转为数值型;
[字符串类型]
>>> 字符串为纯数值字符串,会转为对应的数字; "111"->111
>>> 字符串为空字符串,会转为0; "  "->0
>>> 字符串包含任何其他字符时,都不能转; "1a"->NaN
[Boolean类型]
true->1    false->0
[Null/Undefind]
Null->0    Undefind->NaN
[Object]
*(后续讲解)
    
③ ParseInt():将字符串转为整数类型
>>> 纯数值字符串,能转。
        "12"->12;"12.9"->12(小数转化时,直接抹掉小数点,不进行四舍五入)
>>> 空字符串,不能转。""->NaN
>>> 包含其他字符的字符串,会截取第一个非数值字符串前的数字部分
"123a456"->123, "a123b456"->NaN
>>> ParseInt()只能转字符串,转其他类型,全是NaN
    
[Number函数与ParseInt函数的区别]
1.Number函数可以转各种数据类型,ParseInt函数只能转字符串
2.两者在转字符串时,结果不完全相同。(详见上面解释)
   
④ ParseFloat:将字符串转为字符型;
转换规则与ParseInt相同,只是如果有小数,则保留小数点;如果没有小数,
                则依然是整数
12.5"->12.5;  "12"->12
    
⑤ typeof:检测变量的数据类型
字符串->String          true/false->Boolen   数值->Number
未定义->undefined    对象/Null->object     函数->function
 
三、JS中常用的输入输出语句

1、document.write(  );将( )中的内容,打印输出到浏览器屏幕上;
     使用时需注意:除变量/常量外的所有内容,必须放到""中。变量和常量必须放到""外
     如果同时有变量和字符串,必须用+链接;
     eg:document.write("左手中的纸牌:"+left+"<br />
 
2、alert(  );使用弹框输出
弹窗警告,()中的内容与上述要求相同
 
3、prompt(  );弹框输入
     接收两部分参数:
① 输入框上面的提示内容,可选;
② 输入框里面的默认信息,可选;
    当只写一部分时,表示输入框上面的提示内容
 
可以定义变量,接收输入的内容。点击确定按钮,变量将被赋值为输入的内容;
点击取消按钮,变量将被赋值为null
      
输入内容时,默认接收的数据类型都是字符串!!!

JS中的变量和输入输出的更多相关文章

  1. Js中执行变量中的命令语句,也就是所谓的宏替换(很实用的例子)

    Js中执行变量中的命令语句,也就是所谓的宏替换(很实用的例子) 由其做动态编程时非常有用,必须符合js中的语法,用eval能够执行. var aaa="alert('这是变量中的语句')&q ...

  2. Javascript开发技巧(JS中的变量、运算符、分支结构、循环结构)

    一.Js简介和入门 继续跟进JS开发的相关教程. <!-- [使用JS的三种方式] 1.HTML标签中内嵌JS(不提倡使用): 示例:<button onclick="javas ...

  3. JavaScript 基础——使用js的三种方式,js中的变量,js中的输出语句,js中的运算符;js中的分支结构

    JavaScript 1.是什么:基于浏览器 基于(面向)对象 事件驱动 脚本语言 2.作用:表单验证,减轻服务器压力 添加野面动画效果 动态更改页面内容 Ajax网络请求 () 3.组成部分:ECM ...

  4. Node.js中环境变量process.env详解

    Node.js中环境变量process.env详解process | Node.js API 文档http://nodejs.cn/api/process.html官方解释:process 对象是一个 ...

  5. js 中的变量声明提前总结

    一.var 声明 ES6之前,js 中声明变量基本上用 var 关键字: 1.如果访问未声明的变量,会报错:ReferenceError 2.声明了未赋值,值为 undefined,跟前面的报错是两回 ...

  6. Js中判断变量存不存在的问题

    前面写过jquery对象存在与否的判断.现在谈下Js中判断变量存不存在的问题. 如果这样if(!a),当变量a在js中没有申明时,就会报错,那么接下去的代码将不会被执行.注意,这种判断只要变量申明过, ...

  7. 手写面试编程题- 数组去重 深拷贝 获取文本节点 设置奇数偶数背景色 JS中检测变量为string类型的方法 第6题闭包 将两个数组合并为一个数组 怎样添加、移除、移动、复制、创建和查找节点? 继承 对一个数组实现随机排序 让元素水平 垂直居中的三种方式 通过jQuery的extend方法实现深拷贝

    第1题==>实现数组去重 通过 new Set(数组名) // var arr = [12, 12, 3, 4, 5, 4, 5, 6, 6]; // var newarr1 = new Set ...

  8. js中的变量类型

    js 中输出定义变量的类型  typeof  变量名. var u:  --underfined类型 var s = "你是一个好人":   --string类型 var n = ...

  9. JavaScript学习笔记——JS中的变量复制、参数传递和作用域链

    今天在看书的过程中,又发现了自己目前对Javascript存在的一个知识模糊点:JS的作用域链,所以就通过查资料看书对作用域链相关的内容进行了学习.今天学习笔记主要有这样几个关键字:变量.参数传递.执 ...

随机推荐

  1. etcd raft library设计原理和使用

    早在2013年11月份,在raft论文还只能在网上下载到草稿版时,我曾经写过一篇blog对其进行简要分析.4年过去了,各种raft协议的讲解铺天盖地,raft也确实得到了广泛的应用.其中最知名的应用莫 ...

  2. Django学习(二)---使用模板Templates

    学会使用渲染模板的方法来显示html内容. 一.Templates是什么: HTML文件 使用了Django模板语言(Django Tamplate Language DTL) 可以使用第三方模板 二 ...

  3. 基于封装通用的EF CRUD 的操作

    1.  Entity Framework是Microsoft的ORM框架,随着 Entity Framework 不断的完善强化已经到达了EF 6.0+ 还是非常的完善的,目前使用的比例相对于其他OR ...

  4. 一个简单的时间轴demo

    一个时间轴的组成 使用一个块级元素包裹内容,并未块级元素设置边框 定义圆形或者菱形等元素标签,子元素设置偏移或者定位元素将图标定位到边框上 使其中的内容不溢出,自动换行,内容自动撑高 英文自动换行:w ...

  5. Java字符串格式化记录

    最近打log的时候用到了字符串的格式化. Java中String格式化和C语言的很类似.把情况都列出来,以后好查询. public static void main(String[] args) { ...

  6. nopCommerce 3.9 大波浪系列 之 汉化-Roxy Fileman

    官网:http://www.roxyfileman.com/ 中文包:zh.json 1.将zh.json包拷贝到Nop.Admin项目中"Content\Roxy_Fileman\lang ...

  7. Java并发编程笔记——技术点汇总

    目录 · 线程安全 · 线程安全的实现方法 · 互斥同步 · 非阻塞同步 · 无同步 · volatile关键字 · 线程间通信 · Object.wait()方法 · Object.notify() ...

  8. Docker for windows10 配置镜像加速

    windows玩docker的时候,经常碰到这种问题: Error response from daemon: Get https://registry-1.docker.io/v2/: net/ht ...

  9. 前端十万个为什么(之一):我们为什么需要npm?

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px ".PingFang SC"; color: #454545 } span ...

  10. iOS 使用 socket 即时通信(非第三方库)

    其实写这个socket一开始我是拒绝的. 因为大家学C 语言和linux基础时肯定都有接触,客户端和服务端的通信也都了解过,加上现在很多开放的第三方库都不需要我们来操作底层的通信. 但是来了!!! 但 ...