javaScript入门(一)

js是运行在客户端的脚本语言,不需要编译。翻译一句执行语句。

作用:服务端开发node.js  桌面开发 ......

html、css 是标记语言,描述类语言。

浏览器分为两部分:渲染引擎,js引擎,渲染引擎用来解析html和css,js引擎解析js代码。

JS组成: js语法+dom(页面文档对象模型) + bom(浏览器对象模型)

1. JS输入输出语句

alert(msg) , console.log(msg) , prompt(msg)

prompt('请输入你的年龄');
alert('hello');
console.log('调试输出');

2. JS变量的使用

声明变量 var age

var age = 10;
var age = 10, name = 'super', sex = 2;
var age = prompt('请输入你的年龄');
alert('年龄是'+age);

只声明变量不赋值,是undefined。不声明不赋值直接使用某变量会报错。 不声明直接赋值使用不报错。

3. JS数据类型

js拥有动态类型,相同的变量可以作用不同的类型:

var x = 6; //数字型
x = 'hello';  //变为字符串型

3.1. 简单数据类型:

number = 0 , string = "" , boolean = false , undefined, null

2. 复杂数据类型: object

数字型number 默认值为0

var = 3;
var = 3.14;
//八进制
var num1 = 010;
//十六进制
var num2 = 0x3FF;
console.log(Number.MAX_VALUE);
console.log(Number.MIN_VALUE);

1.7976931348623157e+308
5e-324

Infinity  代表无穷大,

-Infinity 负无穷

NaN , not a number 非数值

判断是否为非数值

 console.log(isNaN(12));  //false

3.2字符串型String

单引号

外双内单或者外单内双

引号内使用转义字符 \n ,\\ , \'  , \" , \t ,\b空格

console.log("哈哈哈哈\n红红火火恍恍惚惚");
var str = 'hello, js';
var len = str.length;
console.log(len);

多个字符串之间可以使用+进行拼接,其拼接方式为字符串+任何类型

3.3 布尔型 boolean

var flag = true;
var flag2 = false;
console.log(flag + 1);
console.log(flag2 + 1);

3.4 undefined null

var t;
console.log(t);

undefined 和 数字相加 结果是 NaN

var t = null;
console.log(t);

null 和 数字相加, null被看为0

3.5 typeof 

var t = 12;
console.log(typeof t);

prompt 返回值是String类型

3.6 数据类型转换

3.6.1转为字符串类型 

var num = 1; 
num.toString();
String(num);

3.6.2 转为数字类型

var a = parseInt('123');  //向下取整
var b = parseInt('123aaa');  //自动去掉字母
var b = parseInt('aaa123aaa');  //NaN 遇到字母后面的全去掉
var c = parseFloat('12.3');
var str = '123';
var d = Number(str);
//隐式转换
console.log('12'-0);
console.log('123'-'120');

3.7 转为布尔类型

代表空,否定的值会被转换为false,如 '' 0 NaN null undefined

console.log(Boolean(''));  //false 
console.log(Boolean(0));    // true
console.log(Boolean(NaN));   // false
console.log(Boolean(null));  //false
console.log(Boolean(undefined));  //false
console.log(Boolean('hello'));  //true
console.log(Boolean(12));   // true

4. 运算符

算数运算符 + - * / %

浮点数的最高精度是17位小数,但在进行算术计算时的其度远远不如整数,不要直接判断两个浮点数是否相等

console.log(0.1 + 0.2);  //0.30000000000000004

18 == ’18‘  //true == 默认转换数据类型,会把字符串类型的数据转换为数字类型

=== 全等与   !== 不全等

18 === 18 // true

18 === '18' // false

5. 数组

数组中元素可以存放任意类型元素。

var ss = []; //创建一个空数组
var arr = [1,2,3,4,5];
var strs = ['a','bc','de'];
console.log(arr);
var cnt = new Array(); //创建了一个空数组
var arr2 = [1,2,'str',true];

push 和 pop 操作 

  var arr = [];
  arr.push(1);
  arr.push(2);
  arr.push(3);
  arr.pop();
  console.log(arr);

 

var arr = [1,2,3,4,5,'str'];
var len = arr.length;
for(var i = 0; i < len; i++){
   console.log(arr[i]);
}
//追加元素
var arr = [1,2,3];
arr[3] = 4;
arr[4] = 5;
console.log(arr);

6.函数

函数参数不需要写数据类型。即使写var也没有作用

function 函数名(形参名1,形参名2){

}

函数名(实参1,实参2);

  function getSum(a,b){
    var sum = a+ b;
    return sum;
  }
  console.log(getSum(1, 2));

另外一种声明方式,getSum是函数名,不是变量名。 

  //var 变量名 = function(){};
  var getSum = function(a,b){
    return a+b;
  }
  console.log(getSum(1, 2));

 

当我们不确定有多少参数传递的时候,可以用arguments来获取。他是函数的一个内置对象。

arguments是伪数组,具有length属性,按照索引的方式进行存储,没有真正数组的一些方法 pop() push()

  function solve(){
    console.log(arguments);
  }
  solve(1,2,3,)

js在es6 的时候新曾块级作用域

if {}  for{}

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值