javaScript笔记(1)

因为网景开发了JavaScript,一年后微软又模仿JavaScript开发了JScript,为了让JavaScript成为全球标准,几个公司联合ECMA(European Computer Manufacturers Association)组织定制了JavaScript语言的标准,被称为ECMAScript标准。
ECMAScript是一种语言标准,而JavaScript是网景公司对ECMAScript标准的一种实现。

基本语法

JavaScript严格区分大小写,如果弄错了大小写,程序将报错或者运行不正常。
基本数据类型

  • 字符串 字符串是以单引号’或双引号"括起来的任意文本
  • 坚持使用===比较
  • null表示一个“空”的值,它和0以及空字符串’‘不同,0是一个数值,’'表示长度为0的字符串,而null表示“空”。
    JavaScript的设计者希望用null表示一个空的值,而undefined表示值未定义。
  • 数组
    JavaScript的数组可以包括任意数据类型,
 var arr = [1, 2, 3.14, 'Hello', null, true];//索引起始为0
  • 对象
    JavaScript的对象是一组由键-值组成的无序集合。
    JavaScript对象的键都是字符串类型,值可以是任意数据类型。
  • 变量
    变量名是大小写英文、数字、$和_的组合,且不能用数字开头。
    变量名也不能是JavaScript的关键字,如if、while等。
    在JavaScript中,使用等号=对变量进行赋值。可以把任意数据类型赋值给变量,同一个变量可以反复赋值,而且可以是不同类型的变量,但是要注意只能用var申明一次
    本身类型不固定的为动态语言
    java语言是静态语言本身类型是固定的
var a = 12;
a="abc"
字符串

JavaScript的字符串就是用’ '或" "括起来的字符表示
如果字符串内部既包含’又包含"怎么办?可以用== 转义字符 ==来标识
转义字符\可以转义很多字符,比如\n表示换行,\t表示制表符,字符\本身也要转义,所以\表示的字符就是\。
模板字符串
字符串用 + 连接

var name = '小明';
var age = 20;
var message = `你好, ${name}, 你今年${age}岁了!`;
var message = '你好' + name + ',你今年' + age + '岁了!'

操作字符串
向字符串中取某个字符,类似数组,从下标0开始。
字符串不会改变,看到的改变是返回的新字符串。

  • toUpperCase()把一个字符串全部变为大写
  • toLowerCase()把一个字符串全部变为小写
  • indexOf()会搜索指定字符串出现的位置
  • substring()返回指定索引区间的子串
数组

JavaScript的Array可以包含任意数据类型,并通过索引来访问每个元素。
array.length();得到数组长度,给长度赋值会改变数组

var arr = [1, 2, 3];
arr[5] = 'x';
arr; // arr变为[1, 2, 3, undefined, undefined, 'x']

方法

  • indexOf()来搜索一个指定的元素的位置,从索引0开始
  • slice()不给slice()传递任何参数,它就会从头到尾截取所有元素。利用这一点,我们可以很容易地复制一个Array
  • push()向Array的末尾添加若干元素,pop()则把Array的最后一个元素删除掉
  • unshift()方法向Array的头部添加若干元素,shift()方法则把Array的第一个元素删掉
  • sort排序
  • reverse反转
  • splice()方法是修改Array的“万能方法”,它可以从指定的索引开始删除若干元素,然后再从该位置添加若干元素
var arr = ['Microsoft', 'Apple', 'Yahoo', 'AOL', 'Excite', 'Oracle'];
// 从索引2开始删除3个元素,然后再添加两个元素:
arr.splice(2, 3, 'Google', 'Facebook'); // 返回删除的元素 ['Yahoo', 'AOL', 'Excite']
arr; // ['Microsoft', 'Apple', 'Google', 'Facebook', 'Oracle']
  • concat()方法把当前的Array和另一个Array连接起来,并返回一个新的Array,并没有修改原来的数组
  • join()方法是一个非常实用的方法,它把当前Array的每个元素都用指定的字符串连接起来,然后返回连接后的字符串:
var arr = ['A', 'B', 'C', 1, 2, 3];
arr.join('-'); // 'A-B-C-1-2-3'
对象

一种无序的集合数据类型,它由若干键值对组成,属性:值,所有的属性都是字符串,值可以是任意数据类型。一般属性名包含特殊字符时要用’ '括起来,访问属性不能用 . 操作,必须用[‘XXX’]访问。

var xiaohong = {
    name: '小红',
    'middle-school': 'No.1 Middle School'
};
xiaohong['middle-school']; // 'No.1 Middle School'
xiaohong['name']; // '小红'
xiaohong.name; // '小红'

判断对象是否拥有某个属性,用in
判断一个属性是否是对象自身拥有的,而不是继承得到的,可以用hasOwnProperty()方法

条件判断

JavaScript把null、undefined、0、NaN和空字符串’'视为false,其他值一概视为true,因此上述代码条件判断的结果是true。

循环

for循环的一个变体是for … in循环,它可以把一个对象的所有属性依次循环出来

var o = {
    name: 'Jack',
    age: 20,
    city: 'Beijing'
};
for (var key in o) {
    if (o.hasOwnProperty(key)) {//hasOwnProperty()过滤掉对象继承的属性
        console.log(key); // 'name', 'age', 'city'
    }
}

数组也是对象,而它的每个元素的索引被视为对象的属性,因此,for … in循环可以直接循环出Array的索引,循环得到是字符串。

var a = ['A', 'B', 'C'];
for (var i in a) {
    console.log(i); // '0', '1', '2'
    console.log(a[i]); // 'A', 'B', 'C'
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值