今天开个js自学笔记,本身js的语法很简单,如果学过java或者c系的都很容易,就不讨论了。主要是讨论实际应用的问题。
1.表单验证:
a.html自动验证:
html 表单验证可以通过浏览器来自动完成。如果表单字段 (fname) 的值为空, required 属性会阻止表单提交:
<form action="demo_form.php" method="post">
<input type="text" name="fname" required="required">
<input type="submit" value="提交">
</form>
b.javascript验证:
以下实例代码用于判断表单字段(fname)值是否存在, 如果不存在,就弹出信息,阻止表单提交:
function validateform() {
var x = document.forms["myform"]["fname"].value;
if (x == null || x == "") {
alert("需要输入名字。");
return false;
}}
然后在html里面:
<form name="myform" action="demo_form.php" onsubmit="return validateform()" method="post">
名字: <input type="text" name="fname">
<input type="submit" value="提交">
</form>
这个只是其中一个例子,实际应用中 validateform 这个函数(方法)可以改动,比如说可以验证输入是否是email,或者是否是纯数字之类的。
c.使用dom:
<input id="id1" type="number" min="100" max="300" required>
<button onclick="myfunction()">验证</button>
<p id="demo"></p>
<script>
function myfunction() {
var inpobj = document.getelementbyid("id1");
if (inpobj.checkvalidity() == false) {
document.getelementbyid("demo").innerhtml = inpobj.validationmessage;
} }
</script>
这个代码会验证输入是否是属于100-300这个区间。
2.let和const:
es2015(es6) 新增加了两个重要的 javascript 关键字: let 和 const。
let 声明的变量只在 let 命令所在的代码块内有效。
const 声明一个只读的常量,一旦声明,常量的值就不能改变。
在 es6 之前,javascript 只有两种作用域: 全局变量 与 函数内的局部变量
这篇文章写的很清楚,建议去看一看:
3.json(javascript object notation)文件:
json 是用于存储和传输数据的格式,通常用于服务端向网页传递数据 。
注意json是独立的语言 ,json 使用 javascript 语法,但是 json 格式仅仅是一个文本,其文本可以被任何编程语言读取及作为数据格式传递。
{"sites":[
{"name":"runoob", "url":"www.runoob.com"},
{"name":"google", "url":"www.google.com"},
{"name":"taobao", "url":"www.taobao.com"}
]}
一个名称对应一个值,对象保存在大括号内。json 数组保存在中括号内。
如果我们想要在js代码里面使用json,我们需要将其转换成js对象:
var text = '{ "sites" : [' + '{ "name":"runoob" , "url":"www.runoob.com" },' + '{ "name":"google" , "url":"www.google.com" },' + '{ "name":"taobao" , "url":"www.taobao.com" } ]}';
然后就可以赋值给元素:
obj = json.parse(text);
document.getelementbyid("demo").innerhtml = obj.sites[1].name + " " + obj.sites[1].url;
也可以反过来把js对象转换成json文件:
var str = {"name":"菜鸟教程", "site":"http://www.runoob.com"} str_pretty1 = json.stringify(str)
引用: