以下是整理的JavaScript和python的基础区别的整理:

字符串、列表、元组、字典、集合、函数

字符串

声明一个字符串

python

str  = '123'
str  = "123"

Tips:

  • 如果是三个引号的话,那么在py中就是注释的意思 '''我是注释 '''
  • 在py中也是存在这种全局和局部的变量的【只是没有let、const、var声明】
a = '我是全局变量'

def init():

    a = "嗨,我是局部变量"
    
init()

print(a) // 我是全局变量

javascript

str = '123'
str = "123"
  • 当然无疑在js中三个引号 一定是报错的
  • 同时在js中是区分 全局变量和局部变量的
let a = '我是全局变量'

function init(){

    let a = '嗨,我是局部变量'
    
}

init();

console.log(a)   // 我是全局变量

a = '我是全局变量'

function init(){

    a = '嗨,我是局部变量'
    
}

init();

console.log(a)   // 嗨,我是局部变量

方法对比

python

取得字符串的长度

str = 'abc'

print(len(str)) // 3

字符串首字母大写

str = 'abc'

print(str.title()) // Abc

字符串是否含有某个字母

str = 'abc'

print(str.find('a'))    // 0

javascript

取得字符串的长度

str = 'abc'

console.log(str.length) // 3

字符串首字母大写

str = 'abc'

let newstr = str.replace(/^\S/, s =>s.toUpperCase())

consoe.log(newstr) // Abc

字符串是否含有某个字母

str = 'abc'

console.log(str.indexof('a'))   // 0
列表

声明一个列表

python

arr = ['a','b','c','d']

ps: python的声明的数组其实很JavaScript声明是一样的,只是没有声明类型

javascript

let arr = ['a','b','c','d']

方法对比

python

打印第一个列表元素

arr = ['a','b','c','d']

print(arr[0])    // a

打印非第一个元素剩余列表元素

arr = ['a','b','c','d']

print(arr[1:])    // ['b','c','d']

打印倒数第二个元素

arr = ['a','b','c','d']

print(arr[-2])    // c

javascript

打印第一个列表元素

let arr = ['a','b','c','d']

console.log(arr[0])    // a

打印非第一个元素剩余列表元素

let arr = ['a','b','c','d']

console.log(arr.slice(1))    // ['b','c','d']

打印倒数第二个元素

let arr = ['a','b','c','d']

console.log(arr[arr.length - 2])    // c

Tips:

  • 想要在python得到每个值,也是需要循环的,但是python支持的循环的方法只有、for in\while
  • 在JavaScript中支持数组循环的方法就有很多了、for\for in\ map\foreach\ map\...
元组

声明第一个元组

tup = ('Google', 'Runoob', 1997, 2000);

元组的方法其实跟列表有一致的,列表跟元组的区别就是

  • 列表是动态数组,它们不可变且可以重设长度(改变其内部元素的个数)。
  • 元组是静态数组,它们不可变,且其内部数据一旦创建便无法改变。
  • 元组缓存于Python运行时环境,这意味着我们每次使用元组时无须访问内核去分配内存。
字典

声明一个字典

python

dict = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'}

Tips: 其实在python的中的字典跟JavaScript的对象基本是一致的

javascript

let dict = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'}

方法对比

python

访问字典中的值

dict = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'}

print(dict['Alice'])  // 2341

del dict['Name'] // 删除键 'Name'

dict.clear()    // 清空字典;

del dict        // 删除字典

计算字典元素个数,即键的总数

dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}

len(dict)    // 3

打印字符串的字典

dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
str(dict) //  "{'Name': 'Runoob', 'Class': 'First', 'Age': 7}" 

javascript

访问对象中的值

dict = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'}

console.log(dict['Alice'])    // 2341 

delete dict['Alice']        // 删除键 'Name'

dict = {};                  // 清空兑现;

delete dict                // 删除对象

计算对象元素个数,即键的总数

dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}

Object.keys(dict).length    // 3

打印字符串的对象

dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}

JSON.stringify(dict) // "{'Name': 'Runoob', 'Class': 'First', 'Age': 7}" 
集合

声明有一个集合

python

parame = {value01,value02,...} or  set(value)

javascript

let arr = [1,2,3,2,3,4]
let parame = new Set(arr)

Tips:

  • 再集合中或者是在js的set对象中都可没有两个相同的值
  • 都具有删除、添加、清空等一些操作
  • python的集合中的方法比js的set方法要多一些而已
函数

声明有一个函数

python


def init (a,b = 2):
    
    print(a)

    print(b)

init('1')

javascript

function init(a,b = 2){
    console.log(a)
    
    console.log(b)

}

init('1')

Tips:

  • 不管是python还是JavaScript都是可以让形参有默认值的
  • 不同的就是python的函数是没有括号的,并且要有换行符,这个尤为注意

THIS
765 声望9 粉丝

多读书、多看报、少吃零食、多睡觉