8.4 JavaScript(一)
参考链接:http://how2j.cn/k/javascript/javascript-javascript-tutorial/519.html
一、JavaScript是什么
JavaScript用于网页和用户之间的交互,eg:比如提交的时候,进行用户名是否为空的判断。
完整的javascript由语言基础、BOM、DOM三部分组成。
javascript代码必须放在script标签中 script标签可以放在html的任何地方,一般建议放在head标签里
javascript都是放在script标签中的,一旦加载,就会执行、如果有多段script代码,会按照从上到下,顺序执行(不换行)
可以采用和css一样的手段,把javascript代码剥离出来,单独放在一个文件里,在html中引用该文件即可。
<script src="http://how2j.cn/study/hello.js"></script>
二、JavaScript的语言基础
2.1 document是javascript的内置对象,代表浏览器的文档部分,document.write("Hello Javascript"); 向文档写入字符串
2.2 JavaScript相关注释、// 单行注释、/* .. */ 多行注释
2.3 使用var声明一个变量、开头可以用 _$和字母 、其他部分可以用 $ _ 字母或者数字
<script>
var x = 10;
document.write("变量x的值:"+x);
</script>
2.4 JS的七大基本数据类型
- undefined:当一个变量被声明了,却没有赋值的时候,叫做 undefined
- Boolean:Boolean变量有两种值,分别是true或者false
- Number:javascript中的Number可以表示十进制,八进制,十六进制整数,浮点数,科学记数法
- String:与java不同的是,javascript中没有字符的概念,只有字符串,所以单引号和双引号,都用来表示字符串。
- Array:集合
- object:对象
- null:空对象/对象不存在
var变量的类型是动态的,当值是整数的时候,就是Number类型,当值是字符串的时候,就是String类型
判断x元素的类型:+typeof x
2.5 基本类型转换
javascript是一门很有意思的语言,即便是基本类型,也是伪对象,所以他们都有属性和方法。变量a的类型是字符串,通过调用其为伪对象的属性length获取其长度
- 转换成字符串:无论是Number,Boolean还是String都有一个toString方法,用于转换为字符串
- 数字变为字符串:Number转换为字符串的时候有默认模式a.toString(),10进制和基模式自己决定几进制两种。
- 转换为数字:javascript分别提供内置函数 parseInt()和parseFloat(),被转换的字符串,同时由数字和字符构成,那么parseInt会一直定位数字,直到出现非字符。
- 使用内置函数Boolean() 转换为Boolean值,当转换字符串时:非空即为true
当转换数字时:非0即为true;当转换对象时;非null即为true
Number()和parseInt()一样,都可以用来进行数字的转换
区别在于,当转换的内容包含非数字的时候,Number() 会返回NaN(Not a Number)、parseInt() 要看情况,如果以数字开头,就会返回开头的合法数字部分
String()和toString()的区别?
String()和toString()一样都会返回字符串,区别在于对null的处理
String()会返回字符串"null"
toString() 就会报错,无法执行
2.5 调试的几种方法
- alert(1)会弹出一个对话框,里面的内容是1。换句话说,如果弹出了1,这个位置以上的代码,都是可以运行的。
- 点击快捷键F12,就会出现console页面。
- 类似于 alert进行调试, firebug有一个日志输出工具console.log()
三、函数
函数即一段可以重复使用的代码
<script>
function print(message){
document.write(message);
}
print("第一句话");
print("<br>");
print("第二句话");
</script>
在函数内的参数为局部参数、在函数外的为全局参数
四、JavaScript的内置对象(需要new)
JavaScript中的对象是有着属性和方法的一种特殊数据类型。
- Number,
- 字符串String,
- 日期Date,
- 数组Array。
- Math,算数常用方法
8.4 JavaScript(一)的更多相关文章
- JavaScript之父Brendan Eich,Clojure 创建者Rich Hickey,Python创建者Van Rossum等编程大牛对程序员的职业建议
软件开发是现时很火的职业.据美国劳动局发布的一项统计数据显示,从2014年至2024年,美国就业市场对开发人员的需求量将增长17%,而这个增长率比起所有职业的平均需求量高出了7%.很多人年轻人会选择编 ...
- javascript中的Array对象 —— 数组的合并、转换、迭代、排序、堆栈
Array 是javascript中经常用到的数据类型.javascript 的数组其他语言中数组的最大的区别是其每个数组项都可以保存任何类型的数据.本文主要讨论javascript中数组的声明.转换 ...
- Javascript 的执行环境(execution context)和作用域(scope)及垃圾回收
执行环境有全局执行环境和函数执行环境之分,每次进入一个新执行环境,都会创建一个搜索变量和函数的作用域链.函数的局部环境不仅有权访问函数作用于中的变量,而且可以访问其外部环境,直到全局环境.全局执行环境 ...
- 探究javascript对象和数组的异同,及函数变量缓存技巧
javascript中最经典也最受非议的一句话就是:javascript中一切皆是对象.这篇重点要提到的,就是任何jser都不陌生的Object和Array. 有段时间曾经很诧异,到底两种数据类型用来 ...
- 读书笔记:JavaScript DOM 编程艺术(第二版)
读完还是能学到很多的基础知识,这里记录下,方便回顾与及时查阅. 内容也有自己的一些补充. JavaScript DOM 编程艺术(第二版) 1.JavaScript简史 JavaScript由Nets ...
- 《Web 前端面试指南》1、JavaScript 闭包深入浅出
闭包是什么? 闭包是内部函数可以访问外部函数的变量.它可以访问三个作用域:首先可以访问自己的作用域(也就是定义在大括号内的变量),它也能访问外部函数的变量,和它能访问全局变量. 内部函数不仅可以访问外 ...
- JavaScript权威指南 - 函数
函数本身就是一段JavaScript代码,定义一次但可能被调用任意次.如果函数挂载在一个对象上,作为对象的一个属性,通常这种函数被称作对象的方法.用于初始化一个新创建的对象的函数被称作构造函数. 相对 ...
- JavaScript自定义浏览器滚动条兼容IE、 火狐和chrome
今天为大家分享一下我自己制作的浏览器滚动条,我们知道用css来自定义滚动条也是挺好的方式,css虽然能够改变chrome浏览器的滚动条样式可以自定义,css也能够改变IE浏览器滚动条的颜色.但是css ...
- JavaScript进阶之路(一)初学者的开始
一:写在前面的问题和话 一个javascript初学者的进阶之路! 背景:3年后端(ASP.NET)工作经验,javascript水平一般般,前端水平一般般.学习资料:犀牛书. 如有误导,或者错误的地 ...
- 梅须逊雪三分白,雪却输梅一段香——CSS动画与JavaScript动画
CSS动画并不是绝对比JavaScript动画性能更优越,开源动画库Velocity.js等就展现了强劲的性能. 一.两者的主要区别 先开门见山的说说两者之间的区别. 1)CSS动画: 基于CSS的动 ...
随机推荐
- VC++ warning C4819 的解决方法(转)
编译VC++程序的时候出现如下提示警告: warning C4819: The file contains a character that cannot be represented in the ...
- LeetCode 腾讯精选50题--数组中的第K个最大元素
好吧,不得不承认,书上看到的始终不是自己的,只有亲身时间过才会明白该怎么操作. 找数组中第K个最大元素,简而言之就是先排序,不论使用哪种算法,都需要先排序,确认位置,由于数组可以通过下标直接访问,所以 ...
- vue入门:(模板语法与指令)
vuejs使用及HTML的模板语法,可以实现声明式将DOM绑定至底层VUE实例的数据.通过模板语法将数据渲染进DOM的系统,结合响应系统,在应用状态改变时,Vue能够计算出重新渲染组件的最小代价并应用 ...
- macbook打印出现乱码解决方案
系统偏好设置 --> 打印机与扫描仪 --> + (左下角的加号) --> IP --> 输入打印机的ip地址,然后最下面的 “使用选择” 中选中 普通PCL 打印机,(默认的 ...
- nginx 配置反向代理根目录到其他服务器
location /detail/json { if ( $uri = "/detail/json" ) { rewrite "/detail/json" /i ...
- 使用WSGI创建REST接口
问题 你想使用一个简单的REST接口通过网络远程控制或访问你的应用程序,但是你又不想自己去安装一个完整的web框架. 解决方案 构建一个REST风格的接口最简单的方法是创建一个基于WSGI标准(PEP ...
- 逆向破解H.Koenig 遥控器 Part 2
逆向破解H.Koenig 遥控器 Part 2 到目前为止,我们已经知道了RF收发器的安装过程,下面是我们所掌握的东西 : l 无线电收发器是一个Avantcom A7105 l 调制是FSK l 频 ...
- python基础编程: 函数示例、装饰器、模块、内置函数
目录: 函数示例 装饰器 模块 内置函数 一.函数示例: 1.为什么使用函数之模块化程序设计: 不使用模块程序设计的缺点: 1.体系结构不清晰,可主读性差: 2.可扩展性差: 3.程序冗长: 2.定义 ...
- Java语言基础(7)
1 for循环 案例:Demo1 1+1/2+1/3+1/4+1/5+1/6+...+1/100 = ? 1/1+1/2+1/3+1/4+1/5+1/6+...+1/100 = ? 分子都是1,分母是 ...
- AVL树的介绍和实现
一.AVL树 AVL树是一种自平衡二叉查找树,因此在了解AVL树之前先介绍一下平衡二叉树.所谓平衡二叉树即该树中的任一个节点的左子树和右子树高度差不会超过1.如下图左是平衡二叉树,而右图则不是.节点4 ...