JavaScript学习笔记(2)基础语法

输出

DOM (Document Object Model)(文档对象模型)是用于访问 HTML 元素的正式 W3C 标准。

格式

那些老旧的实例可能会在

现在已经不必这样做了。

JavaScript 是所有现代浏览器以及 HTML5 中的默认脚本语言。

脚本位置

在 或者 的JavaScript

外部脚本不能包含

输出数据

window.alert() 弹出警告框。

<script>
window.alert(5 + 6);
</script>

document.write() 方法将内容写到 HTML 文档中。

<p id="demo">我的第一个段落</p>

<script>
document.getElementById("demo").innerHTML = "段落已修改。";
</script>

innerHTML 写入到 HTML 元素。

<script>
document.write(Date());
</script>

console.log() 写入到浏览器的控制台。

<script>
a = 5;
b = 6;
c = a + b;
console.log(c);
</script>

输出内容

使用 document.write() 向文档输出写内容。

如果在文档已完成加载后执行 document.write,整个 HTML 页面将被覆盖

语言结构

字面量
在编程语言中,一般固定值称为字面量,如 3.14。

数字(Number)字面量 可以是整数或者是小数,或者是科学计数(e)。
123e5就是123乘以10的5次方
变量
JavaScript 使用关键字 var 来定义变量, 使用等号来为变量赋值:

var x, length

x = 5

length = 6

语句
语句是用分号分隔:
注释
//
函数

function myFunction(a, b) {
    return a * b;                                // 返回 a 乘以 b 的结果
}

换行

document.write("你好 \
世界!");

变量
Symbol 是 ES6 引入了一种新的原始数据类型,表示独一无二的值。
数组

var cars=new Array();
cars[0]="Saab";
cars[1]="Volvo";
cars[2]="BMW";

或者 (condensed array):

var cars=new Array("Saab","Volvo","BMW");

对象

var person={
firstname : "John",
lastname  : "Doe",
id        :  5566
};

对象属性有两种寻址方式:

name=person.lastname;
name=person["lastname"];

Undefined 和 Null
Undefined 这个值表示变量不含有值。

可以通过将变量的值设置为 null 来清空变量。

声明变量

var carname=new String;
var x=      new Number;
var y=      new Boolean;
var cars=   new Array;
var person= new Object;

对象
和c++的类

事件

HTML 事件是发生在 HTML 元素上的事情。

当在 HTML 页面中使用 JavaScript 时, JavaScript 可以触发这些事件。
以下是 HTML 事件的实例:

  • HTML 页面完成加载

  • HTML input 字段改变时

  • HTML 按钮被点击

实例

<button onclick="displayDate()">现在的时间是?</button>
<input id="test" type="button" value="提交"/>
<script>
window.onload = function(){
    var test = document.getElementById("test");   
    test.addEventListener("click",myfun2);   
    test.addEventListener("click",myfun1);
}
function myfun1(){  
    alert("你好1");
}
function myfun2(){ 
    alert("你好2");
}
</script>

事件大全

字符串

长度
可以使用内置属性 length 来计算字符串的长度:
var sln = txt.length;
转义字符
’ 单引号
" 双引号
\ 反斜杠
\n 换行
\r 回车
\t tab(制表符)
\b 退格符
\f 换页符
外引号和内引号不同可以不用加反斜杠

===
=== 为绝对相等,即数据类型与值都必须相等。
常用方法
查找指定字符,返回指定字符位置;unicode相关;分片;转换大小写;移除首尾空白;html显示方法(如闪动,加粗,斜体等)详细请按

  • 运算符用于把文本值或字符串变量加起来(连接起来)。
    txt3=txt1+" "+txt2;

条件运算符

voteable=(age<18)?"年龄太小":"年龄已达到";
return p>1?p<b?p>b:p=6:p=3; // 这一行中出现了多个问号和冒号,看起来很乱怎么办呢
其实很简单,寻找到多元运算符的头 ? 和尾 : 就好办多了

就成了这样:

p>1?p<b?p>b:p=6:p=3

p>1? 整体 :p=3

语句

大多数与c差不多
除了少数

for
for (x in person)  // x 为属性名
{
    txt=txt + person[x];
}

for 循环除了使用 in 方式来循环数组,还提供了一个方式: of , 遍历数组时更加方便。

for (let value of iterable) {
  console.log(value);
}

for-of 的语法看起来跟 for-in 很相似,但它的功能却丰富的多,它能循环很多东西。

我们可以使用const来替代let,这样它就变成了在循环里的不可修改的静态变量。

let iterable = [10, 20, 30];

for (const value of iterable) {
  console.log(value);

循环一个Map:

let iterable = new Map([["a", 1], ["b", 2], ["c", 3]]);

for (let [key, value] of iterable) {
  console.log(value);
label & continue &break

如需标记 JavaScript 语句,请在语句之前加上冒号:

label:
statements

break 和 continue 语句仅仅是能够跳出代码块的语句。

语法:

break labelname; 
continue labelname;

continue 语句(带有或不带标签引用)只能用在循环中。

break 语句(不带标签引用),只能用在循环或 switch 中。

通过标签引用,break 语句可用于跳出任何 JavaScript 代码块:

实例

cars=["BMW","Volvo","Saab","Ford"];
list: 
{
    document.write(cars[0] + "<br>"); 
    document.write(cars[1] + "<br>"); 
    document.write(cars[2] + "<br>"); 
    break list;
    document.write(cars[3] + "<br>"); 
    document.write(cars[4] + "<br>"); 
    document.write(cars[5] + "<br>"); 
}

其他基础知识

typeof

你可以使用 typeof 操作符来检测变量的数据类型。

实例

typeof "John"                // 返回 string
typeof [1,2,3,4]             // 返回 object
typeof {name:'John', age:34} // 返回 object
null

在 JavaScript 中 null 表示 “什么都没有”。
你可以设置为 null 来清空对象:

实例

var person = null;           // 值为 null(空), 但类型为对象
undefined

typeof 一个没有值的变量会返回 undefined。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值