说明
1、JS变量名是区分大小写的
2、js声明时并不知道类型的(他是动态类型),只有在赋值时才知道类型
3、直接一层可以是单引号也还可以是双引号,但是如果在双引号里面必须的单引号
4、在JS中,只有key-value的类型才叫做对象类型
5、可以使用索引位置来访问字符串中的每个字符
6、注意处理字符串是非常灵活的,基本上你能想到的都有现成的方法处理
7、可以使用 typeof 操作符来检测变量的数据类型
8、变量可以在使用后声明,也就是变量可以先使用再声明(叫做:hoisting(变量提升))
9、"use strict";声明严格模式
10、isNaN(x);判断x不为空
代码实例:
<head>
<meta charset="UTF-8">
<title>JS基本语法</title>
<script>
var a=12;
// 将numbe类型转换成字符串
var b = a.toString();
// 将字符串类型转换成number
var c = Number(b);
// 将布尔类型准成number
var d = Number(true);
alert(d);
// alert(typeof c);
// alert(typeof a);
// alert(typeof b);
var name;
var str="\"字符串问题,索引和长度!!\"";
var str1 = str[1];
var len = str.length;
document.write("<p> 我是JS动态写入的p标签 </p>")
document.write("字符串是:"+str+"字符串的第二个字符:"+str1+"字符串的长度:"+len);
for(var i = 0; i < str.length; i++){
document.write(str[i]);
}
// 错误处理
try{
//这里写正常的代码
}
catch(err){
//这里写如果发生错误,打印错误信息
}
//在常规模式下 数据类型是被忽略的
var x = 10;
var y = "10";
alert((x == y))
var persons = '{"person":[' +
'{name:"zhengran",phone:"123456",address:"哈哈哈哈哈"}' +
'{name:"zhengran",phone:"12345678",address:"哈哈哈哈哈2"}' +
'{name:"zhengran",phone:"22222333333",address:哈哈哈哈哈3"}]}';
// 将字符串转换成对象
var persionObj = JSON.parse(persons);
console.log(persionObj.person[0].name);
</script>
</head>
<body>
<h1 id="jia"> 我是h1标签实例 </h1>
<p id="p1" onclick="chageP()"> 我是p标签实例 </p>
<button type="button" name="btn" onclick="change()"> 按钮点击改变h1标签内容 </button>
<br/>
![](img/pic_bulboff.gif)
<br/>
<button id="popBtn" onclick="popError()"> 弹出警告框 </button>
<p id="p2" onclick="yufa()"> JS中的常见语法 </p>
<p id="p3" onclick="bianliang()"> 变量练习 </p>
<p id="p4" onclick="hanshu('zhengran','22323232323')"> 含参函数练习 </p>
<p id="p5" onclick="logName()"> 作用于问题练习 </p>
<br/>
<button id="btn1" onclick="getElementById('p6').innerHTML=Date()"> 现在时间是?</button>
<p id="p6"></p>
<br/>
<button id="btn2" onclick="this.innerHTML=Date()"> 现在时间是?</button>
<br/>
<button id="btn3" onclick="tryTest()"> 错误处理 </button>
<script>
function change() {
var x = document.getElementById("jia");
console.log(x);
x.innerHTML="哈哈 内容被改变了哈";
}
function changeImg() {
var x = document.getElementById('img');
if(x.src.match("bulbon")){
x.src="img/pic_bulboff.gif";
}else {
x.src="img/pic_bulbon.gif";
}
}
function chageP() {
var x = document.getElementById("p1");
x.style.color="red";
}
function popError() {
console.log("输出到控制台!!!");
window.alert("弹出警告框!!!");
}
function popError2() {
window.alert("元素被改变了!!!");
}
function yufa() {
var arr=[40, 100, 1, 5, 25, 10];
var myOvject = {myName:"zhengran", myAge:"23", myPhone:"233232323"};
//document.getElementById("p2").innerHTML=(arr[0]*arr[3]);
//document.getElementById("p2").innerHTML=(myOvject.myPhone);
document.getElementById("p2").innerHTML=(myFunction(arr[0],arr[3]));
}
// return 退出函数
function myFunction(a, b) {
return a * b;//在语句的后面也可以注释哟
}
function bianliang() {
var a = 10;
var b = 80;
var c = a+b;
window.alert(c);
}
function hanshu(x, y) {
alert ("这是名字是"+x+"手机号码是:"+y);
}
//作用于问题
var x = "我是zhengran";
function logName() {
name = "我是全局变量";
alert("打印信息:"+x+"-----"+name);
}
//看看错误处理
var txt ="";
function tryTest() {
try {
console.log("这是一个不存在的方法");
adddlert("Welcome guest!");
}catch(err){
txt="本页有一个错误。\n\n";
txt+="错误描述:" + err.message + "\n\n";
txt+="点击确定继续。\n\n";
alert(txt);
}
}
</script>
</body>