JavaScript详解(一)
简介:
Javascript是一个脚本语言,弱类型的编程语言,简称js,被称为网站开发的行为。它的作用是增加页面特效、前后台交互以及应用于后台开发。它即可写在HTML的script标签里,也可写在外部js文件里。要注意的是JavaScript严格区分大小写,且以分号结尾,语句字符必须是英文。
html骨架(页面结构),css是样式(元素大小、颜色、位置、隐藏或显示等),js是行为(部分动画效果、页面与用户交互等)
变量定义:由于是弱类型,故不用指定类型,使用关键字var定义变量。
注释:多行注释/* .....*/ 单行注释 //
引入js文件:<script type="text/javascript" src="js文件"> </script>
弹窗与控制台打印:分别是alert()和console.log(),在代码调试中常常用到这个。
六大类型:数字(number)、字符串(str)、布尔(true,false)、空(null)、对象、未定义(undefine)。未定义就是一个变量声名但未赋予值。
取变量类型:typeof 变量名
运算符:
- 括号:() [ ] 中括号表示数组的下标
- 逻辑反: !x
- 自加自减: x++ ++x x-- --x 前加和后加的区别在于前加是运算前执行++,后加是运算后执行++
- 算术运算符:* / % + -
- 比较运算符:< > <= >= == === != 与其他语言不同的是多了一个===,这是由它的弱类型造成的,==只比较他们的值,不管类型,而===同时比较他们的值和类型。
- 逻辑运算符: && ||
- 赋值运算符:=
- 复合运算符:+= -= *= /= %=
- 条件运算符:z?x:y 条件z成立,返回值x,否则返回y。
+号两边是数字和字符串,加号起拼接作用。-和*、/、%号两边是数字和数字的字符串,会将数字字符串看出一个数字。
js获取元素
对于具有唯一性的标签,如body、title、head可以直接获取。
var obox = document.title
对于不具有唯一性的标签还可通过id、class、tagname、name、上下文选择器来获取。
var obox = document.getElementsById("xx")
var obox = document.getElementsByClassName("xx")
var obox = document.getElementsByTagName("xx")
var obox = document.getElementsByName("xx") #常用于表单
var obox = document.querySelector("xx xx") //只获取一个
var obox = document.querySelectorAll("xx xx") //获取所有满足条件的
如果获取的元素是一个确切的元素,可以直接操作这个元素,若有多个元素,必须通过下标来操作这个元素。
可用以获取的对象来取代document,以缩小获取元素的范围。
获取的元素可通过innerHTML或innerText来修改标签里的内容,innerHTML可以解析标签,innerText不能。如:
document.body.innerHTML = "<i> hello,world. </i>“
js简单事件
所谓的事件就是指JavaScript捕获到用户的操作,并能做出正确响应。在事件函数里,有一个关键字this,它代表当前触发事件的这个元素的事件。
格式: 对象.事件 = function(){ xxxx }
鼠标事件:
- 单击事件:onclick
- 双击事件:ondblclick
- 鼠标划入事件:onmouseenter
- 鼠标划出事件:onmouseleave
如:
obox.onclick = funtion() {
this.innerText = "hello";
}
js操作属性
对于标准的属性如href、class、id、name、target等可以直接进行读取和修改。要注意的是class属性在操作属性里写作classname。
obox.target = "_self_;
obox.classname = "long" #操作class属性
对于不规范的的属性,读取和修改分开,读取用getAttribute(”属性“)方法,设置属性用setAttribute(”属性“,”属性值“)方法,移除属性用removeAttribute(”属性“)方法。这三种方法对于规范属性同样有效。
设置属性可以一次给一个属性设置多个值,一般只有class这个属性可以有多个值,多个值之间用空格分开。
js操作css样式
js操作样式有两种方式,一种是直接利用变量对象操作,一种是放在事件函数里操作。
直接操作:变量.style.属性 = ”xxx“。 要想一次改多个属性: 变量.style.cssText = "属性1:值;属性2:值” 。 操作复合属性有两种,一种是要去掉-号,-号后面的第一个单词大写。如oBox.style.marginLeft = "100px";另一种不需要改动属性名,oBox.style["margin-left"] = "100px"。
放在事件函数里:就是将变量改成this。其方法与直接操作是一样的。
JavaScript详解(一)的更多相关文章
- Day03 javascript详解
day03 js 详解 JavaScript的基础 JavaScript的变量 JavaScript的数据类型 JavaScript的语句 JavaScript的数组 JavaScript的函数 Ja ...
- Unicode与JavaScript详解
本文为转载内容 一.Unicode是什么? Unicode源于一个很简单的想法:将全世界所有的字符包含在一个集合里,计算机只要支持这一个字符集,就能显示所有的字符,再也不会有乱码了. 它从0开始,为每 ...
- javascript 详解数组
概念 数组创建 数组读写 数组 VS. 一般对象 相同点 不同点 稀疏数组 数组的length属性 元素增删 数组迭代 二维数组 数组方法 Array.prototype.join Array.p ...
- 【原创教程】JavaScript详解之语法和对象
JavaScript的好的想法:函数.弱类型.动态对象和一个富有表现力的对象字面量表示法. JavaScript的坏的想法:基于全局变量的编程模型. 好了,不管他是好的还是坏的,都是我的最爱,下面 ...
- JavaScript详解
JavaScript可以说是web开发中必备的一种技术.它具有灵活,简单,高效等特点.这次DRP中大量的用到了js,让自己对js有了更深的了解.看完这个以后还回去看了一下牛腩的js视频.把以前没看的看 ...
- Unicode与JavaScript详解 [很好的文章转]
上个月,我做了一次分享,详细介绍了Unicode字符集,以及JavaScript语言对它的支持.下面就是这次分享的讲稿. 一.Unicode是什么? Unicode源于一个很简单的想法:将全世界所有的 ...
- Web前端之Javascript详解20180330
一.javascript概述 javascript是基于对象和事件的脚本语言. 特点: 1.安全性(不允许直接访问本地硬盘(因为是被远程的浏览器解释)),它可以做的就是信息的动态交互 2.跨平台性(只 ...
- JavaScript: 详解正则表达式之三
在上两篇文章中博主介绍了JavaScript中的正则常用方法和正则修饰符,今天准备聊一聊元字符和高级匹配的相关内容. 首先说说元字符,想必大家也都比较熟悉了,JS中的元字符有以下几种: / \ | . ...
- JavaScript: 详解正则表达式之一
正则表达式是一个精巧的利器,经常用来在字符串中查找和替换,JavaScript语言参照Perl,也提供了正则表达式相关模块,开发当中非常实用,在一些类库或是框架中,比如jQuery,就存在大量的正则表 ...
- javascript详解1
推荐学习链接: https://book.apeland.cn/details/356/ http://es6.ruanyifeng.com/#README https://developer.moz ...
随机推荐
- PGSQL基本操作语句
; --更新数据 ,,) ; --插入数据 ORDER BY app_name,flag asc/desc ; --查询数据并且排序 offset ; --查询起点0开始查询,返回5条数据 ORDER ...
- 学习spring第五天 mybatis+spring的整合(maven多模块数据查询使用了分页和连接池),以及aop
mybatis+spring的整合: 导入的依赖:1.数据库连接:mysql-connector-java 2.连接池:druid 3.servlet:javax.servlet-api 4.jstl ...
- Linux学习《第二章命令》本章小结
经过这一章的学习,了解了常用的命令.这是学习Linux系统最最基础的工作,必须努力掌握,个人觉得,并不是这个章节学习结束之后,命令的学习就结束了,而是刚刚开始,今后在每个知识点学习过程中,都会 学习到 ...
- 使用BP爆破有token值的密码(10.17 第二十三天)
此次爆破使用的网站是DVWA来进行测试 工具:Burp suite 1.进去DVWA网站,选择高级安全等级,再进入到Brute Force(爆破)模块,假设此时已知账号是admin的情况下我们不知道密 ...
- P 1028 人口普查
转跳点:
- NVIDIA TX2--3--NVIDIA Jetson TX2 查看系统版本参数状态及重要指令
NVIDIA Jetson TX2 查看系统参数状态. 当前博主的TX2更新的版本为:Jetpack 3.3, cuda 9.0.252, cudnn7.0, opencv3.3.1, TensorR ...
- Vulkan 开发学习资料汇总
开发资料汇总 1.API Reference 2.Vulkan Spec 有详细说明的pdf 文章 1.知乎Vulkan-高性能渲染 2.Life of a triangle - NVIDIA's l ...
- gogs 小团队使用 2
gogs 团队使用第二种方法如下, 前面办法参考前面的方法: 由 root 用户新建 organization, 比如说建立 hardware,然后把团队的 技术负责人拉到 owners 这个 tea ...
- ArchLinux安装(UEFI)
ArchLinux安装(UEFI) 一.连接网络 1.连接 # wifi-menu 2.检查是否联通 (ctrl+c停止) # ping www.baidu.com 3.远程安装 注:连接上网络之后可 ...
- Idea 中的快捷键(mac)
Mac键盘符号和修饰键说明 ⌘ Command ⇧ Shift ⌥ Option ⌃ Control ↩︎ Return/Enter ⌫ Delete ⌦ 向前删除键(Fn+Delete) ↑ 上箭头 ...