https://www.runoob.com/js/js-tutorial.html
1.js直接写入输出流:
<body>
<script>
document.write("<h1>这是一个标题</h1>");
document.write("<p>这是一个段落。</p>");
</script>
</body>
设置一个按钮,对时间做出反应:
<body><button type="button" onclick="alert('欢迎!')">点我!</button></body>
用js改变html内容:
<p id="demo">
JavaScript 能改变 HTML 元素的内容。
</p>
<script>
function myFunction()
{
x=document.getElementById("demo"); // 找到元素
x.innerHTML="Hello JavaScript!"; // 改变内容
}
</script>
<button type="button" onclick="myFunction()">点击这里</button>
或者改变图片(这里可以使用?:运算符):
<script>
function changeImage()
{
element=document.getElementById('myimage')
if (element.src.match("bulbon"))
{
element.src="/images/pic_bulboff.gif";
}
else
{
element.src="/images/pic_bulbon.gif";
}
}
</script>
<img id="myimage" onclick="changeImage()" src="/images/pic_bulboff.gif" width="100" height="180">
验证输入:
<input id="demo" type="text">
<script>
function myFunction()
{
var x=document.getElementById("demo").value;
if(x==""||isNaN(x))
{
alert("不是数字");
}
}
</script>
<button type="button" onclick="myFunction()">点击这里</button>
2.js应该位于<script> 与 </script>之间,放在<body>或<head>里。通常情况下都放在head里或者统一放在页面底部(脚本可以写在调用处之后)。也可以从调用外部脚本,修改script的src即可:<script src="myScript.js"></script>
标签的innerHTML属性,即内容,可以赋值更改。
Document.write在页面加载后使用则会覆盖页面。
3.js输出:
window.alert()弹出警告框,document.write()将内容写到HTML文档,innerHTML写出到标签的内容,console.log()写入到浏览器的控制台。
Js字面量:整数、小数、科学计数(123e5)、字符串(单双引号均可)、数组([]括起来)、对象(由键值对组成)、函数(用function声明)。
声明变量用var。所有皆var(块中的变量可用let。如果不加var或let,则默认为全局变量。花哨一点可用用var x = new 类型(值))。语句用;分隔(可选)。注释用//和/*。js对大小写敏感。Try对应catch,throw对raise。可用\表示下一行接续(有条件)。Js逐行执行。标签有this指针。
4.HTML常见事件:
事件 描述
onchange HTML 元素改变
onclick 用户点击 HTML 元素
onmouseover 用户在一个HTML元素上移动鼠标
onmouseout 用户从一个HTML元素上移开鼠标
onkeydown 用户按下键盘按键
onload 浏览器已完成页面的加载
5.字符串对象有length方法。其他常用的还有concat、indexOf、match(re匹配)。
===操作要求类型和值都相同,==则先转换为同类型,只比较值。相对有!=和!==。
Js中也有switch,和c++中一样。这里的switch用的是===判断。
Break或continue可以后接具体的block名。
6.在 JavaScript 中有 6 种不同的数据类型:
string
number
boolean
object
function
symbol
3 种对象类型:
Object
Date
Array
2 个不包含任何值的数据类型:
null
undefined
6.js中的re:格式为
/正则表达式主体/修饰符(可选)
比如i修饰符,表示不区分大小写。
其他修饰符:
i 执行对大小写不敏感的匹配。
g 执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。
m 执行多行匹配。
search方法和replace方法都可用re。
元字符:
\d 查找数字。
\s 查找空白字符。
\b 匹配单词边界。
\uxxxx 查找以十六进制数 xxxx 规定的 Unicode 字符。
Re有test方法,用来检验一个字符串是否含有自己。
Re详见https://www.runoob.com/jsref/jsref-obj-regexp.html
可用js验证表单。或者在input标签中添加required="required"属性来自动验证非空。Html5中新增了约束验证。
7.异步函数:在网页上执行一些时间较长、当前用不到的事情,比如读取大文件或者发出网络请求,可用在主线程之外用子线程,同时进行。具体用法是setTimeout(函数名,ms时间),执行时启动一个独立于主线程的子线程,等待函数执行一定时间。
对于嵌套setTimeout,可用promise将其转变为顺序结构。
更多内容见后。以上内容仅用于初步看懂js。