demo.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
div.one input{
width:50px;
}
div.two{
font-family: 宋体;
}
div.two input{
}
div.two span{
display:inline-block;
border:1px solid lightgray;
width:120px;
margin-bottom: 5px;
}
button#generate{
width:80px;
height: 30px;
}
textarea{
width:100%;
height: 150px;
margin-top: 20px;
}
</style>
<script>
document.write("Hello JavaScript" + "<br>");
</script>
<script>
document.write("第一段JavaScript");
</script>
<br>
<script>
document.write("第二段JavaScript");
</script>
<br>
<script src = "hello.js"></script>
<!--函数-->
<script>
function print(){
document.write("这一句话由一个自定义函数打印!<br>")
}
print();
</script>
<script>
function print(message){
document.write(message);
}
print("第一句话");
print("<br>");
print("第二句话");
document.write("<br>");
</script>
<script>
function print(message) {
document.write(message);
}
function calc(x,y) {
return x + y;
}
var sum = calc(500,200);
print(sum);
document.write("<br>")
</script>
<script>
function calc(){
var num1 = document.getElementById("num1").value;
var num2 = document.getElementById("num2").value;
num1 = parseFloat(num1);
num2 = parseFloat(num2);
var result= num1 + num2;
document.getElementById("result").value=result;
}
</script>
<script>
function generate(){
var province = $("province");
var city = $("city");
var county = $("county");
var town = $("town");
var village = $("village");
var name = $("name");
var result1 = province + "省" + city + "市" + county + "县" + town + "镇" + village + "村的" + name;
document.getElementById("result1").value = result1;
function $(id) {
var value = document.getElementById(id).value;
return value;
}
}
</script>
<script>
function showHello() {
alert("HelloWrold!")
}
</script>
</head>
<body>
<div class = "one">
<p>
<button onclick = "document.getElementById('text').style.display = 'none'">隐藏文本</button>
<button onclick = "document.getElementById('text').style.display = 'block'">显示文本</button>
<p id = "text">这是一段可以被JavaScript隐藏的文本</p>
</p>
<p>
<input type = "text" id= "num1"> +
<input type = "text" id= "num2"> =
<input type = "text" id= "result">
<input type = "button" value= "运算" onclick = "calc()">
</p>
</div>
<div class = "two">
<span>省:</span><input type = "text" id = "province">
<span>市:</span><input type = "text" id = "city">
<br>
<span>县:</span><input type = "text" id = "county">
<span>镇:</span><input type = "text" id = "town">
<br>
<span>村:</span><input type = "text" id = "village">
<span>姓名:</span><input type = "text" id = "name">
<br>
<div align = "center">
<button id = "generate" onclick = "generate()">生成</button>
<br>
<textarea id = "result1"></textarea>
</div>
</div>
<!--property是onclick,表示点击的时候触发-->
<!--value是showHello(),调用showHello()函数-->
<button onclick = "showHello()">点击一下</button>
</body>
</html>
hello.js
document.write("js文件里的JavaScript" + "<br>");
var x = 10;
document.write("变量x的值:" + x + "<br>");
y = 10;
document.write("没有var声明的变量y的值" + y + "<br>");
//alert(1);
//console.log("end");
//undefined数据类型
var z;
document.write("声明了吧,但没有赋值的变量z" + z + "<br>");
//Boolean
var t = true;
var f = false;
document.write("布尔值:" + t);
document.write("<br>");
document.write("布尔值:" + f + "<br>");
//Number
var a = 10; //十进制
var b = 012; //第一位是0,表示八进制
var c = 0xA; //0x开头,表示16进制
var d = 3.14; //有小数点表示浮点数
var e = 3.14e2; //使用e的幂表示科学计数法
document.write("十进制10的值:" + a + "<br>");
document.write("八进制012的值:" + b + "<br>");
document.write("十六进制0xA的值:" + c + "<br>");
document.write("浮点数3.14的值:" + d + "<br>");
document.write("科学计数法3.14e2的值:" + e + "<br>");
//字符串 与java不同的,javascript中没有字符的概念,只有字符串,所以单引号和双引号,都用来表示字符串。
var x = 'hello';
var y = "java";
document.write("单引号的字符串" + x + "<br>");
document.write("双引号的字符串" + y + "<br>");
//动态类型 变量的类型是动态的,当值是整数的时候,就是Number类型,当值是字符串的时候,就是String类型
var x = 10;
document.write("此时x的值是" + x + "类型是数字(Number)<br>");
x = "hello";
document.write("此时x的值是" + x + "类型是字符串(String)<br>");
//typeof 进行变量类型判断
var x;
document.write('声明了但是为赋值的时候,类型是:' + typeof x);
document.write("<br>");
x = 10;
document.write("赋值10之后,类型是:" + typeof x);
document.write("<br>");
x = 5.1;
document.write("赋值5.1之后,类型是:" + typeof x);
document.write("<br>");
x = true;
document.write('赋值true之后,类型是:' + typeof x);
document.write("<br>");
x = "hell0";
document.write("赋值hello之后,类型是:" + typeof x);
document.write("<br>");
//javascript变量即便是基本类型,也是伪对象,所以他们都有属性和方法。
var a = "hello world!";
document.write("变量啊的类型是:" + typeof a);
document.write("<br>");
document.write("变量a的长度是:" + a.length + "<br>");
//转换为字符串
var a = 10;
document.write("数字" + a + "转换为字符串" + a.toString());
document.write("<br>");
var b = true;
document.write("布尔" + b + "转换为字符串" + b.toString());
document.write("<br>");
var c = "hello java";
document.write("字符串" + c + "转换为字符串" + c.toString());
document.write("<br>");
//Number转化为字符串有默认模式和基模式两种
var a = 10;
document.write("默认模式下,数字10转换为10进制" + a.toString());
document.write("<br>");
document.write("基模式下,数字10转换为2进制" + a.toString(2));
document.write("<br>");
document.write("基模式下,数字10转换为8进制" + a.toString(8));
document.write("<br>");
document.write("基模式下,数字10转化为16进制" + a.toString(16));
document.write("<br>");
//转换为数字
document.write("字符串\"10\"转换为数字的:" + parseInt("10"));
document.write("<br>");
document.write("字符串3.14转换为数字的:" + parseFloat("3.14"));
document.write("br");
document.write("字符串的10abc转换为数字的:" + parseInt("10abc"));
document.write("<br>");
document.write("字符串的helloworld转换为数字的:" + parseInt("helloworld")); //NaN not a number
document.write("<br>");
//转换为Boolean
// 使用内置函数Boolean() 转换为Boolean值
// 当转换字符串时:
// 非空即为true
// 当转换数字时:
// 非0即为true
// 当转换对象时:
// 非null即为true
document.write("空字符串''转换为布尔后的值:" + Boolean(""));
document.write("<br>");
document.write("非空字符串'helloworld'转换为布尔后的值:" + Boolean("helloworld"));
document.write("<br>");
document.write("数字0转换为布尔后的值:" + Boolean(0));
document.write("<br>");
document.write("数字3.14转换为布尔后的值:" + Boolean(3.14));
document.write("<br>");
document.write("空对象null转换为布尔后的值:" + Boolean(null));
document.write("<br>");
document.write("非空对象new Object()转化内布尔后的值:" + Boolean(new Object()));
document.write("<br>");
//Number()和parseInt()一样,都可以用来进行数字的转换
// 区别在于,当转换的内容包含非数字的时候,Number() 会返回NaN(Not a Number)
// parseInt() 要看情况,如果以数字开头,就会返回开头的合法数字部分,如果以非数字开头,则返回NaN
document.write(Number("123"));
document.write("<br>");
document.write(Number("123abc"));
document.write("<br>");
document.write(Number("abc123"));
document.write("<br>");
document.write(parseInt("123"));
document.write("<br>");
document.write(parseInt("123abc"));
document.write("<br>");
document.write(parseInt("abc123"));
document.write("<br>");
// String()和toString()一样都会返回字符串,区别在于对null的处理
// String()会返回字符串"null"
// toString() 就会报错,无法执行
var a = null;
document.write(String(a));
document.write("<br>");
document.write(a.toString());
document.write("<br>");
document.write("上一句报错,所以这一句不显示");
alert(1);