日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

python给js变量赋值_python 之 前端开发( JavaScript变量、数据类型、内置对象、运算符、流程控制、函数)...

發(fā)布時(shí)間:2025/3/12 python 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python给js变量赋值_python 之 前端开发( JavaScript变量、数据类型、内置对象、运算符、流程控制、函数)... 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

11.4 JavaScript

11.41 變量

1、聲明變量的語法

//1. 先聲明后定義

var name; //聲明變量時(shí)無需指定類型,變量name可以接受任意類型

name= "egon";

?//2. 聲明立刻定義

var age = 18;

2、變量名命名規(guī)范

1、由字母、數(shù)字、下劃線、$ 組成,但是不能數(shù)字開頭,也不能純數(shù)字

2、嚴(yán)格區(qū)分大小寫

3、不能包含關(guān)鍵字和保留字(以后升級(jí)版本要用的關(guān)鍵字)。

如:

abstract、boolean、byte、char、class、const、debugger、double、enum、export、extends、final、float、goto

implements、import、int、interface、long、native、package、private、protected、public、short、static、super、synchronized、throws、transient、volatile

4、推薦駝峰命名法:有多個(gè)有意義的單詞組成名稱的時(shí)候,第一個(gè)單詞的首字母小寫,其余的單詞首字母寫

5、匈牙利命名:就是根據(jù)數(shù)據(jù)類型單詞的的首字符作為前綴

3、ES6中l(wèi)et

ES6之前js沒有塊級(jí)作用域,ES6新增了let命令,用于聲明變量(聲明的變量屬于塊級(jí)作用域),流程控制語句的{}就是塊級(jí)作用域。其用法類似于var,但是所聲明的變量只在let命令所在的代碼塊內(nèi)有效。例如:for循環(huán)的計(jì)數(shù)器就很適合使用let命令

for(let i=1;i<=5;i++){

console.log(i);

}//1 2 3 4 5

4、常量

ES6新增const用來聲明常量。一旦聲明,其值就不能改變。

const PI = 3.1415926;

PI=3 //TypeError: "PI" is read-only

11.42 數(shù)據(jù)類型

11.421 數(shù)值(Number)

JavaScript不區(qū)分整型和浮點(diǎn)型,就只有一種數(shù)字類型,即number

var x = 3;var y = 3.1;var z = 13e5;var m = 13e-5;var n = NaN; //typeof n結(jié)果"number"//四舍五入

var num=1.3456num.toFixed(2) //"1.35"

?//字符串類型轉(zhuǎn)成數(shù)字

parseInt("123") //返回123

parseInt("ABC") //返回NaN NaN屬性是代表非數(shù)字值的特殊值,該屬性用于指示某個(gè)值不是數(shù)字。

console.log(parseInt("18林海峰")); //18 帶有自動(dòng)凈化的功能;只保留字符串最開頭的數(shù)字,后面的中文自動(dòng)消失

console.log(parseInt("林海峰18")); //NaN 只去末尾的中文,不會(huì)去開頭的

parseInt("123.456") //返回123

parseFloat("123.456") //返回123.456 字符串中的數(shù)字轉(zhuǎn)浮點(diǎn)

var a = parseInt("1.3") + parseInt("2.6"); //a=3 自動(dòng)帶有截?cái)嘈?shù)的功能:取整,不四舍五入

var a = parseFloat("1.3") + parseFloat("2.6"); //a=3.9

?//數(shù)字類型轉(zhuǎn)成字符串

var x=10;var y='20';var z=x+y; //z='1020'

typeof z; //String

?var m=123;var n=String(m)//'123'

?var a=123;var b=a.toString()//'123'

11.422 字符串(String)

var a = "Hello";var b = "world";var c = a +b;

console.log(c);//得到Helloworld

常用方法:

方法說明

.length

返回長(zhǎng)度

.trim()

移除空白

.trimLeft()

移除左邊的空白

.trimRight()

移除右邊的空白

.charAt(n)

返回第n個(gè)字符

.concat(value, ...)

拼接,拼接字符串通常使用“+”號(hào)

.indexOf(substring, start)

子序列位置

.substring(from, to)

根據(jù)索引獲取子序列

.slice(start, end)

切片

.toLowerCase()

小寫

.toUpperCase()

大寫

.split(',', 2)

根據(jù)逗號(hào)分割,但只顯示前兩個(gè)

substirng()與silce()的區(qū)別:

substirng()的特點(diǎn):

如果 start>stop ,start和stop將被交換

如果參數(shù)是負(fù)數(shù)或者不是數(shù)字,將會(huì)被0替換

?

silce()的特點(diǎn):

如果 start>stop 不會(huì)交換兩者

如果start小于0,則切割從字符串末尾往前數(shù)的第abs(start)個(gè)的字符開始(包括該位置的字符)

如果stop小于0,則切割在從字符串末尾往前數(shù)的第abs(stop)個(gè)字符結(jié)束(不包含該位置字符)

補(bǔ)充:

ES6中引入了模板字符串:模板字符串(template string)是增強(qiáng)版的字符串,用反引號(hào)(`)標(biāo)識(shí),它的用途為

1、完全可以當(dāng)做普通字符串使用var msg =`my name is egon`2、也可以用來定義多行字符串var info =`

name:egon

age:18sex:male

`3、并且可以在字符串中嵌入變量var name = "egon";var age = 18;var msg = `my name is ${name}, my age is ${age}`; //"my name is egon, my age is 18"

注意:

如果模板字符串中需要使用反引號(hào),則在其前面要用反斜杠轉(zhuǎn)義

11.423 布爾值

var a = true;var b = false;//布爾值為false的數(shù)據(jù)類型

Boolean('')

Boolean(0)

Boolean(null)

Boolean(undefined)

Boolean(NaN)

?//其余數(shù)據(jù)類型的布爾值均為true

Boolean([])

Boolean(123)

null 和 undefined :

null:表示值是空,一般在需要指定或清空一個(gè)變量時(shí)才會(huì)使用,如 name=null;undefined:表示當(dāng)聲明一個(gè)變量但未初始化時(shí),該變量的默認(rèn)值是undefined。還有就是函數(shù)無明確的返回值時(shí),返回的也是undefined。null表示變量的值是空,undefined則表示只聲明了變量,但還沒有賦值。

11.43 內(nèi)置對(duì)象

11.431 數(shù)組對(duì)象Array

數(shù)組對(duì)象的作用是:使用單獨(dú)的變量名來存儲(chǔ)一系列的值。類似于Python中的列表。

var x = ["egon", "hello"];

console.log(x[1]); //輸出"hello"

常用方法:

方法說明

.length

數(shù)組的大小

.push(ele)

尾部追加元素

.pop()

刪除尾部的元素

.unshift(ele)

頭部插入元素

.shift()

頭部移除元素

.slice(start, end)

切片

.reverse()

反轉(zhuǎn)

.join(seq)

將數(shù)組元素連接成字符串

.concat(val, ...)

連接數(shù)組

.sort()

排序

.forEach()

將數(shù)組的每個(gè)元素傳遞給回調(diào)函數(shù)

.splice(1,2,"新的值")

刪除元素,并向數(shù)組添加新元素。

.map()

返回一個(gè)數(shù)組元素調(diào)用函數(shù)處理后的值的新數(shù)組

提供比較函數(shù)進(jìn)行排序,該函數(shù)應(yīng)該具有兩個(gè)參數(shù) a 和 b,接收傳入的a和b,執(zhí)行函數(shù)體代碼,然后返回一個(gè)值用于說明a和b的大小

返回值 < 0 :代表a小于b

返回值 =0 : 代表a等于b

返回值 > 0 :代表a大于b

functionsortNumber(a,b){return a -b

}var arr = [123,9,1211,11]

arr.sort(sortNumber)//[9, 11, 123, 1211]

遍歷數(shù)組中的元素:

var arr = [11, 22, 33, 44];for (var i=0;i

console.log(arr[i]);

}//11 22 33 44

forEach() :

語法:forEach( function ( 當(dāng)前元素, 當(dāng)前元素索引, 當(dāng)前元素所屬數(shù)組arr), thisValue)

var arr=['aa','bb','cc','dd','ee']

arr.forEach(function(v,i,arr){

console.log(v,i,arr);

console.log(this[0]);

},"hello")//aa 0 ["aa", "bb", "cc", "dd", "ee"] h//bb 1 ["aa", "bb", "cc", "dd", "ee"] h//cc 2 ["aa", "bb", "cc", "dd", "ee"] h//dd 3 ["aa", "bb", "cc", "dd", "ee"] h//ee 4 ["aa", "bb", "cc", "dd", "ee"] h

splice() :

語法:splice ( 起始元素索引 , 刪除的個(gè)數(shù), 添加的新元素)

var arr=['aa','bb','cc','dd','ee']

arr.splice(1,3,'xxxx') //刪除‘bb’,‘cc’,’dd‘這三個(gè)值,然后插入’xxxx‘

arr //["aa", "xxxx", "ee"]

map() :

語法:map(function ( 當(dāng)前元素, 當(dāng)前元素索引, 當(dāng)前元素所屬數(shù)組arr), thisValue)

//字符串反轉(zhuǎn)

var str = '12345';

Array.prototype.map.call(str,function(x) { //同時(shí)利用了call()方法

returnx;

}).reverse().join(''); //"54321"

11.432 Date日期對(duì)象

創(chuàng)建日期對(duì)象只有構(gòu)造函數(shù)一種方式,使用new關(guān)鍵字

//方法1:不指定參數(shù)

var d1 = newDate();

console.log(d1.toLocaleString());//2020/8/9 下午8:24:06

?//方法2:參數(shù)為日期字符串

var d2 = new Date("2018/01/27 11:12:13");

console.log(d2.toLocaleString());//2018/1/27 上午11:12:13

?var d3 = new Date("01/27/18 11:12:13"); //月/日/年 時(shí)分秒

console.log(d3.toLocaleString()); //2018/1/27 上午11:12:13

?//方法3:參數(shù)為毫秒數(shù)

var d4 = new Date(7000);

console.log(d4.toLocaleString());//1970/1/1 上午8:00:07

console.log(d4.toUTCString()); //Thu, 01 Jan 1970 00:00:07 GMT

?//方法4:參數(shù)為:年,月,日,時(shí),分,秒,毫秒

var d5 = new Date(2018,1,27,11,12,13,700);

console.log(d5.toLocaleString());//毫秒并不直接顯示 // 2018/2/27 上午11:12:13

常用方法:

方法含義

getDate()

根據(jù)本地時(shí)間返回指定日期對(duì)象的月份中的第幾天(1-31)

getMonth()

根據(jù)本地時(shí)間返回指定日期對(duì)象的月份(0-11)

getFullYear()

根據(jù)本地時(shí)間返回指定日期對(duì)象的年份(四位數(shù)年份時(shí)返回四位數(shù)字)

getDay()

根據(jù)本地時(shí)間返回指定日期對(duì)象的星期中的第幾天(0-6)

getHours()

根據(jù)本地時(shí)間返回指定日期對(duì)象的小時(shí)(0-23)

getMinutes()

根據(jù)本地時(shí)間返回指定日期對(duì)象的分鐘(0-59)

getSeconds()

根據(jù)本地時(shí)間返回指定日期對(duì)象的秒數(shù)(0-59)

getMilliseconds()

根據(jù)本地時(shí)間返回指定日期對(duì)象的獲取毫秒

getTime()

返回累計(jì)毫秒數(shù)(從1970/1/1午夜)

編寫代碼,將當(dāng)前日期按“2017-12-27 11:11 星期三”格式輸出:

const WEEKMAP ={0: "星期日",1: "星期一",2: "星期二",3: "星期三",4: "星期四",5: "星期五",6: "星期六",

};

?functionshowTime() {var d1 = newDate();var year =d1.getFullYear();var month = d1.getMonth() + 1;var day =d1.getDate();var hour =d1.getHours();var minute = d1.getMinutes() < 10 ? "0"+d1.getMinutes() :d1.getMinutes();var week = WEEKMAP[d1.getDay()]; //0~6的星期

var dateStr =`

${year}-${month}-${day} ${hour}:${minute} ${week}

`;

console.log(dateStr)

}

?

showTime();//2020-8-9 20:37 星期五

View Code

11.433 Math對(duì)象

方法含義

Math.floor()

向下取整,如5.1取整為5

Math.ceil()

向上取整,如5.1取整為6

Math.max(a,b)

求a和b中的最大值

Math.min(a,b)

求a和b中的最小值

Math.random()

隨機(jī)數(shù),默認(rèn)0-1之間的隨機(jī)數(shù),若想求min~max之間的數(shù),公式為:min+Math.random()*(max-min)

11.434 JSON對(duì)象

//對(duì)象轉(zhuǎn)成JSON字符串

var obj2={"name":"egon","age":18};

str2=JSON.stringify(obj2); //"{"name":"egon","age":18}"

?//JSON格式的字符串轉(zhuǎn)成對(duì)象

var str1='{"name":"egon","age":18}';var obj1=JSON.parse(str1);

console.log(obj1.name);//'egon'

console.log(obj1["name"]); //'egon'

11.435 RegExp對(duì)象

1. 創(chuàng)建正則對(duì)象的方式1

參數(shù)1 正則表達(dá)式

參數(shù)2 匹配模式:常用g(全局匹配;找到所有匹配,而不是在第一個(gè)匹配后停止)和i(忽略大小寫)var reg1 = new RegExp("^[a-zA-Z][a-zA-Z0-9_]{5,11}$"); //匹配用戶名只能是英文字母、數(shù)字和_

reg1.test("egon_123") //true //首字母必須是英文字母,長(zhǎng)度最短不能少于6位 最長(zhǎng)不能超過12位。

注意:正則放到引號(hào)內(nèi),{}內(nèi)的逗號(hào)后面不要加空格2. 創(chuàng)建正則對(duì)象的方式2var reg2 = /^[a-zA-Z][a-zA-Z0-9_]{5,11}$/; //不要加引號(hào)

reg2.test("egon_123") //true

3. String對(duì)象與正則結(jié)合的4個(gè)方法var s1="hello world";

s1.match(/l/g) //符合正則的內(nèi)容["l", "l", "l"]

s1.search(/h/g) //符合正則的內(nèi)容的第一個(gè)索引0

s1.split(/ /) // ["hello", "world"],默認(rèn)全部切割

s1.replace(/l/g,'L') //"heLLo worLd"

4. 匹配模式g與ivar s2="name:Egon age:18"s2.replace(/e/,"贏") //"nam贏:Egon age:18"

s2.replace(/e/g,"贏") //"nam贏:Egon ag贏:18"

s2.replace(/e/gi,"贏") //"nam贏:贏gon ag贏:18"

5.注意1:

1、如果regExpObject帶有全局標(biāo)志g,test()函數(shù)不是從字符串的開頭開始查找,而是從屬性regExpObject.lastIndex所指定的索引處開始查找。2、該屬性值默認(rèn)為0,所以第一次仍然是從字符串的開頭查找。3、當(dāng)找到一個(gè)匹配時(shí),test()函數(shù)會(huì)將regExpObject.lastIndex的值改為字符串中本次匹配內(nèi)容的最后一個(gè)字符的下一個(gè)索引位置。4、當(dāng)再次執(zhí)行test()函數(shù)時(shí),將會(huì)從該索引位置處開始查找,從而找到下一個(gè)匹配。5、因此,當(dāng)我們使用test()函數(shù)執(zhí)行了一次匹配之后,如果想要重新使用test()函數(shù)從頭開始查找,則需要手動(dòng)將regExpObject.lastIndex的值重置為 0。6、如果test()函數(shù)再也找不到可以匹配的文本時(shí),該函數(shù)會(huì)自動(dòng)把regExpObject.lastIndex屬性重置為 0。var reg3 = /egon/g;

reg3.lastIndex0reg3.test("egon") //true,匹配成功

truereg3.lastIndex//匹配成功reg3.lasIndex=4

4reg3.test("egon") //從4的位置開始匹配,本次匹配失敗

falsereg3.lastIndex//匹配失敗,lastIndex歸為0

0reg3.test("egon") //再次匹配成功

true

6.注意2:

當(dāng)我們不加參數(shù)調(diào)用RegExpObj.test()方法時(shí), 相當(dāng)于執(zhí)行RegExpObj.test("undefined"), 且/undefined/.test()默認(rèn)返回true。var reg4 = /^undefined$/;

reg4.test();//返回true

reg4.test(undefined); //返回true

reg4.test("undefined"); //返回true

11.44 運(yùn)算符

//算數(shù)運(yùn)算符:

+ - * / % ++ --

//比較運(yùn)算符:

> >= < <= != == === !==

//邏輯運(yùn)算符

&& || !

//賦值運(yùn)算符

= += -= *= /=

11.45 流程控制

if...else :

var age=18;if(age > 18){

console.log('too old');

}else if(age == 18){

console.log('花姑娘,吆西');

}else{

console.log('too young');

}//花姑娘,吆西

switch :

switch中的case子句通常都會(huì)加break語句,否則程序會(huì)繼續(xù)執(zhí)行后續(xù)case中的語句

var day = newDate().getDay();switch(day) {case 0:

console.log("星期天,出去浪");break;case 6:

console.log("星期六,也出去浪");break;default:

console.log("工作日,正常上班")

}//工作日,正常上班

while:

let i=0;

undefinedwhile (i<=3){

console.log(i);

i++;

}

三元運(yùn)算:

var x=1;var y=2;var z=x>y?x:y //2

11.46 函數(shù)

1、函數(shù)的定義與調(diào)用(與python類同)

//無參函數(shù)

functionf1() {

console.log("Hello world!");

};

f1();

?//有參數(shù)函數(shù)

functionf2(a, b) {

console.log(arguments);//內(nèi)置的arguments對(duì)象

console.log(arguments.length);

console.log(arguments[0],arguments[1]);

console.log(a, b);

};

f2(10,20);

?//帶返回值的函數(shù)

functionsum(a, b){return a +b;

}

sum(1, 2);

?//匿名函數(shù)

var sum = function(a, b){return a +b;

}

sum(1, 2);

?//立即執(zhí)行函數(shù)

(function(a, b){return a +b;

})(1, 2);

注意:

函數(shù)只能返回一個(gè)值,如果要返回多個(gè)值,只能將其放在數(shù)組或?qū)ο笾蟹祷?/p>

總結(jié)

以上是生活随笔為你收集整理的python给js变量赋值_python 之 前端开发( JavaScript变量、数据类型、内置对象、运算符、流程控制、函数)...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。