美文网首页
js 知识点整理

js 知识点整理

作者: 丶温瞳 | 来源:发表于2019-02-18 15:39 被阅读0次

1.js借鉴了c及c语言,

2.区分大小写,    结尾 ';' 需加上,虽不是必须的,但在压缩会报错,增进性能

3.变量命名

   (采用驼峰命名,userName)  开头(字母  $  _) 中间部分(字母,数字  $  _)

4.注释

//  单行注释

/*

* 多行注释

*

*/

5.严格模式

function(){

    "user strict"    // 告诉js引擎切换到严格模式

    // 函数体

}

6.js变量  (是松散类型的,可以保存任何类型的数据)

使用typeof 可识别数据类型     typeof '123'  // string

基本数据类型值

基本数据类型

undefined        // 未申明定义    派生自null

null                   // 未定义的对象  表示空对象指针,用来初始空对象

string               // 字符串    转字符串  '123'.toString() [正常使用这个,性能考虑]   123+'' 常用方法链接

number            // 数字   NaN   非数值但为number类型    1+'ab' = NaN 判断是否为数字 isNan(123) // false 

字面量格式:八进制  070  // 56    十进制    十六进制

浮点数和整数   0.3      3e-2 / 0.03       3e5 / 300000    3*10*5

数值范围    5e-324      1.79769313482623157e+308       

 常使用 转换     parseInt('123')      (不常用 :Number() 可转换任何类型数据   parseFloat() 浮点数转换)boolean           // 布尔    true/false  逻辑判断时   1 '123'  为true ,   0  ''  undefined  null  为false

复杂数据类型

object

引用数据类型值 (对象  数组  函数)

A 对象

let obj = {name:'张三', age:18,01:21};

let name = obj.name; // 张三

let ages = 'age'

let age  = obj[ages];  // 18  如果为变量 则使用 [变量]

let a01 = obj[01]; //21. obj.21 会报错,对象中可用数字作为属性,取值[]

正常情况 使用 '.属性'(建议使用),如果需要使用变量 则使用  ['属性']

obj.age = 20; // 重新赋值age

if(typeof obj.age){} // typeof 用来判断是否存某个属性

B 数组   方法链接

let arry = ['张三',123,true,{age:10},undefined]; // 数组下标是从0开始

let name = arry[0];     // 获取数组值,通过[]张三

arry[3] = {age:200};    // 数组重新赋值之后  ['张三',123,true,{age:200},undefined]

数组常用方法  


C 函数

function demoWay(a,b){

        //  demoWay 实参

        // arguments  实数

        console.log('这里是进行打印');

}

命名函数   var a = function b (){}

匿名函数(一般常用)  var a = function(){}

8.获取元素的常用方法

document.getElementsById('wrap');    // <div id='wrap'></div>

getElementsByClassName('info');    // 不兼容ie8以下  <div class='info'></div>

 getElementsByTagName('p');        // <p></p>

getElementsByName('main');        // <div name='main'></div>

9. 操作各种样式

内部样式

<style id='sty'></style>

let osty = document.getElementsById('sty');

osty.innerHTML = "#wrap{height:200px; width:200px; background:red}";// style也属于html标签(很少使用)

行内样式

<style>

    #wrap.main{background:yellow; font-weight:600};

</style>

<div id = 'wrap' myname='alia'></div>

let owrap = document.getElementsById('wrap');

改变属性值 owrap.属性值(应为合法的属性才有效,例 title  id    className   与保留值class类似) 

owrap.id = 'one-wrap'; // 改变了id值, 对象是不变的,owrap 还有效

改变自定义标签属性值

setAttribute('myname','alia2'); // 单个   setAttribute({'name1':'n1','name2':'n2'});

getAttribute('myname');   removeAttribute('myname');

改变样式

owrap.style.height='100px'; // 单个行内样式;

owrap.style.cssText += "height:200px; color:blue"; // += 样式不会被覆盖

owrap.className = 'main'; // 通常写好样式,改变calss名称进行改变样式,样式不会出现不兼容问题

10 获取标签值,改变标签值

owrap.innerHTML = '<strong>这里是内容</strong><i>附加内容</i> \t哈哈哈';

// 可识别标签  这里是内容 哈哈哈    \ 作为转义符(一般用于特殊符号) 

owrap.innerText = '<strong>这里是内容</strong><i>附加内容</i> \t哈哈哈';

//   <strong>这里是内容</strong>  不能识别标签

<input value='我是好人' class='user-name' />

document.getElementsByClassName('user-name').value('我不是好人'); // 赋值   取值直接value()

11 运算符与拼接  +  -   *   /  %

10/3    // 3.13333

10%3  // 1   % 模 相当于余数

隐式类型转换 

1+2+'8'; // 38

1+2+'8'+1+2 // 3812   字符串后有数字 会先把数组转为字符串进行累加

1+true  // 2      与布尔类型累加,会先转数字类型再进行累加, true 1  false 0

-  *   /  %   会把字符串先 Number() 转之后再进行运算

'20'-'5' = 15;

'20p' - '5' = NaN;

11 自增 自减

a++    先执行后自加   ++a 先自加再执行   let a = 10; let b = a++; // b: 10  let b = ++a; // b: 11

a--    先执行后自减   --a 先自减再执行   let a = 10; let b = a--; // b: 10  let b = --a; // b: 9

12 运算符

if ( true && false)      //  false, 只要有一个假为假

if(true || false)     //    true 只要有一个真为真

if( ! true)                // false 取反

let a = 1 && 0 &&  2  // 0   一直向后取值,当遇到假停止,并取当前值,如若没有假值则取最后一位

let a = 1 || 0 || 2 // 1  一直向后取值,当遇到真停止,并取当前值,如若没有真值则取最后一位

let a = !0    // true    去数据相对应的布尔值  (相对应的false值:   undefind  null   0  ''  Nan   false )

13 运算符优先

.  []   ()            // 一般用于取值 数组对象

++  --   !   typeOf()

*   /   %

+  -  

>=   <=   >    <

&&

|| 

,            // let a = (1,2,3,4);  结果为4   ‘,’取最后一位

例子:

let b = 4

let   a =  10 ||  8 && (b=5); // a10, b 4    先进行计算 && ,取false,无false值,取b=5,   10|| (b=5), || 取 true值,10,不进行执行b=5;

let c = !b + 5;  // 5   !b = false -> false+5 ->  0+5 = 5;

let d3 = (2,10 && 0 || 8 && !5); // false   ->(2, 0 || !5) ->(2,!5) -> (2,false) -> false

12 es 6  拼接  反义符

let a = 'zhang';

'<p>

    <a>点击${name}</a>

</p>

7.判断

var age = 19;

// 三元运算(三目运算)

age>18 ? (a='成年人',b='18岁以上') : (a='未成年人',b='18岁以下'); 

相关文章

  • js小知识点

    js小知识点 整理 js小知识点 (一):获取元素 1:document.getElementById('id名'...

  • js知识点整理

    这是我前段时间学习js的知识点的整理,我把它写成了一个文件,简书上不知道怎么上传唉。。。 然后就放在了githup...

  • js 知识点整理

    1.js借鉴了c及c语言, 2.区分大小写, 结尾 ';' 需加上,虽不是必须的,但在压缩会报错,增进性能 3.变...

  • js知识点整理

    typeof 与intanceof的区别 typeof和instanceof的区别是:typeof的返回值是一个字...

  • 前端 JavaScript基础知识梳理

    前言 javascript内容较多,知识点较杂。我整理了一些js基础的知识点(只是知识点的名称,内容不做详解),希...

  • JS生疏知识点整理

    const : 定义变量不可更改;定义对象可更改、扩展、删除对象属性值,仅仅能做到不可更改引用(重新赋值)而已。 ...

  • JS知识点整理-2

    JS的string对象 创建String对象 var str =“abc” 方法和属性属性length 字符串的长...

  • JS知识点整理-3

    JS函数的重载 什么是重载? 方法名相同,参数不同 JS是否存在重载?--不存在,调用最后一个方法,把传递的参数保...

  • JS 小知识点整理

    常见操作数组、字符串 API 字符串API定义用法slice(start, end)用于提取字符串中介于两个指定下...

  • JS基础整理(1)—函数和闭包

    这段空闲时间,打算整理一些JS非常基础,但是又常常搞不清记不住的知识点。 第一篇,先整理一下JS的函数,特别是闭包...

网友评论

      本文标题:js 知识点整理

      本文链接:https://www.haomeiwen.com/subject/snwaeqtx.html